常用正则表达式总结

正则表达式在线校验地址: https://regexper.com/

目录:

  • 一、用法与释义
  • 二、常用正则表达式

一、用法与释义

1、 用法
<!--用法-->
reg.test(str)

// for example
let regName = /^([a-zA-Z]|[\u4E00-\u9FA5]){1,8}$/
regName .test('测试xm') // true
regName .test('测试12') // false
2、释义
  • 根据正则表达式语法释义
    /^([a-zA-Z]|[\u4E00-\u9FA5]){1,8}$/为例
各符号代表如下:
^  以...开始    
\s 指空格(html转义里的空格)
+ 连续
| 或

即 以 英文字母(不区分大小写)[a-zA-Z] 或者| 汉字[\u4E00-\u9FA5] 开始,1到8位{1,8}。

1.png

one of 代表有两条路可以走通,一条是英文不区分大小写a-z和A-Z,另一条是汉字\u4E00-\u9FA5。即英文字母或汉字
at most 7 times 代表最多再循环7次,加上最初的一次,共8次。
合起来就是 英文字母与汉字,不得多于8位。

深度了解了构成原理以后根据项目需求就可以灵活变通啦。

二、常用正则表达式

  • 中/英文名,不多于8位
    /^([a-zA-Z]|[\u4E00-\u9FA5]){1,8}$/
  • 验证手机号
    /^1[356789]\d{9}$/
  • 检验图片格式
    /^(image\/jpeg|image\/png)$/i
  • 消除字符串首尾两端的空格
    /^\s+|\s+$/g
  • 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
    /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
  • 银行卡是16位或者19位的正则表达式
    /^(\d{16}|\d{19})$/
  • 同时验证手机号和座机号
    /^((0\d{2,3}-\d{7,8})|(1[356789]\d{9}))$/
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容