简单易懂的正则

1、什么是正则?

我的理解:处理字符串的工具。

2、如何使用?

/\d/
匹配0-9的字符串:0 1 2 3 4 5 6 7 8 9

/\.(jpg|png|gif)/i
1.jpg
a.JPG
a.Jpg

3、定界符两个斜杠://

匹配规则写在两个两个斜杠之间

4、 转义一个反斜杠\

\d [0-9]
\w [a-z0-9_]
\s 空白
. 任意字符
\D [^0-9] 其中 ^表示排除
\W [^a-z0-9_]
\S 非空白

5、定界符右侧的:

1)i 忽略大小写
2)g 即global 贪婪模式,也可以组合使用 iggi

6、 元字符一对中括号[ ]的含义

1)任何一个

/a[abc]q/
正确:aaq,abq,acq
错误:abbq

2)范围

/[a-z]/i:a至z之间的任意一个字母,i 不区分大小写
/[0-9]/: 0至9之间的任意一个数字
/[a-z0-9]/:匹配一个字符,a至z之间小写字母或0至9之间的数字
[3-59] [3-5 9]:匹配一个数字,3至5之间的数字或数字9

3)排除

[^a-z0-9]:匹配一个字符,a至z或0至9之外的字符

7、 量词一对大括号{ }

{n} /a{6}/ /\d{11}/ :匹配n个字符
{n,m} /\d{5,12}/:匹配5至12个字符
{n,} /\w{6,}/:至少6个字符,多了不限
+ 等价于 {1,} :至少一个,多了不限
? 等价于{0,1} :有且仅有一个
. : 任意字符
示例:
/\.jsx?/ :匹配: .js .jsx
/a.{3,20}z/: 匹配: a 任何字符5-18 z
正确:a#5678#z
正确:a123456z
正确:a2wewrjkjl8934&*z

8、修饰符即条件

^ 行首
$ 行尾
示例:
/\.js/ 1.js.png 1.html.js.png.ccc 符合规则,但显然不是我们需要的结果

/\.js$/i 1.js 1231.txt.js 正确

/^https?:\/\// 正确

9、优先级

使用圆括号( )提示优先级

let re=/\.(jpg|gif|png)$/i;

// const str = 1.Png;   // 通过
// const str = 2.jpg;   // 通过
const str = 3.GIF;      // 通过

if(re.test(str)){
     alert('通过');
 }else{
     alert('不对');
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 专业考题类型管理运行工作负责人一般作业考题内容选项A选项B选项C选项D选项E选项F正确答案 变电单选GYSZ本规程...
    小白兔去钓鱼阅读 13,229评论 0 13
  • 几个正则表达式编辑器 Debuggex :https://www.debuggex.com/ PyRegex:ht...
    没技术的BUG开发攻城狮阅读 10,055评论 0 23
  • Python中的正则表达式(re) import rere.match #从开始位置开始匹配,如果开头没有则无re...
    BigJeffWang阅读 12,113评论 0 99
  • 正则表达式全部符号解释(转) 常用正则表达式大全 (转) 不错的正则博客 正则的方法 var reg = /[1-...
    me__me11阅读 4,655评论 0 0
  • 想要战胜压力是万万不可能的 “零压力”不应该成为我们的目标,因为压力绝对不会消失。期望不能得到的东西,反而会增加我...
    周国会阅读 2,750评论 0 0

友情链接更多精彩内容