正则表达式——元字符

前端之家收集整理的这篇文章主要介绍了正则表达式——元字符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
要想学会正则表达式,理解元字符是一个必须攻克的难关。
不用刻意记
.
:匹配任何 单个字符
例如正则表达式“
b.g 能匹配如下字符串:“ big” 、“ bug” 、“ bg” ,但是不匹配“ buug ,“ b..g 可以匹配“ buug
[ ] :匹配括号中的 任何 一个 字符。
例如正则表达式“
b[ aui ]g” 匹配 bug big bag ,但是不匹配 beg baug 。可以在括号中使用 连字符“ -” 来指定字符的区间 来简化表示,例如正则表达式 [0-9] 可以匹配任何数字字符,这样正则表达式“ a[0-9]c” 等价于“ a[0123456789]c” 就可以匹配“ a0c” 、“ a1c” 、“ a2c” 等字符串;还可以制定多个区间,例如“ [A- Za -z]” 可以匹配任何大小写字母,“ [A-Za-z0-9]” 可以匹配任何的大小写字母或者数字。
( ) :将 () 之间括起来的表达式定义为“组” (group) ,并且将匹配这个表达式的字符保存到一个临时区域 , 这个元字符在字符串提取的时候非常有用。把一些字符表示为一个整体。 改变优先级、定义提取 两个作用。
| :将两个匹配条件进行逻辑“或”运算。
'
z|food ' 能匹配 "z" "food" '( z|f ) ood ' 则匹配 " zood " "food"

* :匹配 0 至多个在它之前的子表达式,和通配符*没关系
例如正则表达式“
zo *” 能匹配 “ z” 、“ zo 以及 “ zoo” ;因此“ .*” 意味着能够匹配任意字符串。 "z( b|c )*"→ zb zbc zcb zccc zbbbccc "z(ab)*" 能匹配 z zab zabab (用括号改变优先级)。
+ :匹配前面的子表达式 一次或多次 ,和*对比( 0 到多次 )。
例如正则表达式
9+ 匹配 9 99 999 等。 “ zo +” 能匹配 “ zo 以及 “ zoo” ,不能匹配 "z"
? :匹配前面的子表达式 零次或一次
例如,
"do( es )?" 可以匹配 "do" "does" 。一般用来匹配“可选部分”。
{n} :匹配确定的 n 次。
" zo {2}"→zoo 。例如,“ e{2}” 不能匹配“ bed” 中的“ e” ,但是能匹配“ seed” 中的两个“ e”
{n,} : 至少匹配 n 次。
例如,“
e{2,}” 不能匹配“ bed” 中的“ e” ,但能匹配“ seeeeeeeed 中的所有“ e”
{ n,m } :最少匹配 n 次且最多匹配 m 次。
e{1,3}” 将匹配“ seeeeeeeed 中的前三个“ e”

^ shift+6 ):匹配一行的 开始
例如正则表达式“
^regex” 能够匹配字符串“ regex 我会用”的开始,但是不能匹配“我会用 regex”
^ 另外一种意思:非!(暂时不用理解)
$ :匹配行结束符。
例如正则表达式“浮云
$” 能够匹配字符串“一切都是浮云”的末尾,但是不能匹配字符串“浮云呀”


欢迎加入.net技术交流群

原文链接:https://www.f2er.com/regex/361797.html

猜你在找的正则表达式相关文章