正则表达式(二)

正则表达式元字符

https://blog.csdn.net/wlwanglu/article/details/52221195

 

精通正则表达式(元字符)

https://www.cnblogs.com/zhuimengdeyuanyuan/archive/2013/02/05/2892988.html

 

正则表达式(一) -- 元字符

https://www.cnblogs.com/kissdodog/archive/2013/04/22/3036649.html

 

个人分类: 正则表达式

工作中会大量用到正则表达式,将元字符总结如下,方便回忆。 
1. 行的起始和结束 
‘^’代表一行的开始; 
‘$’代表一行的结束; 
这两个元符号的特别之处在于,他们匹配的是一个位置,而不是具体的文本。 
2. 字符组 
用数组符号’[…]’标识,匹配中括号内的若干字符之一,在字符组内部,‘-’表示一个范围。 
3. 排除型字符组 
用‘[^…]’表示,匹配任何未列出的字符。如[^1-6]匹配除了1到6以外的任何字符。 
4. 用点号匹配任意字符 
元字符’.’用来匹配任意字符的字符组的简写。 
5. 多选结构 
‘|’表示“或”,子表达式组合构成总表达式。通过这种组合,实现多选。 
注意[a|e]和(a|e)是不一样的。在字符组中我们知道,[]内的字符是要被匹配的,所以|是和a、e一样的普通字符。因此,利用()来划定多选结构的范围。 
6. 忽略大小写 
采用命令行参数’-i’表示进行忽略大小写的匹配。把’-i’写在正则表达式之前。 
7. 单词分界符 
利用’\<’和’>’匹配单词分界的位置。 
需要注意的是,<和>本身并不是元字符,只有当它们与斜线结合起来的时候,才有特殊意义。 
8. 可选项元素 
元字符’?’代表可选项,把它加载一个字符的后面,表示该字符可有可无。 
9. 重复出现 
‘+’和’‘和之前的问号类似。’+’表示之前紧邻的元素出现一次或多次,而’‘表示之前紧邻的元素出现任意多次,或者不出现。

  1. 规定重现次数的范围:区间 
    用大括号’{min,max}’表示重复出现的区间。如’[a-zA-Z]{1,5}’来匹配(1到5个字母)。 
    11.括号与反向引用 
    反向引用容许我们匹配与表达式先前部分匹配的同样文本。 
    在反向引用中,括号能够记忆其中的子表达式匹配的文本,不论这些文本是什么,元字符序列’\n’都能记住它们。n表示第n个括号匹配的文本。括号是按照开括号’(’从左到右的出现顺序进行的。

  2. 神奇的转义 
    如果需要匹配的某个字符本身就是元字符,’\’表示转义,它后面作用的元字符会失去特殊含义。

12、常用的字符 
/i (忽略大小写) 
/g (全文查找出现的所有匹配字符) 
/m (多行查找) 
/gi(全文查找、忽略大小写) 
/ig(全文查找、忽略大小写)

\s : 空格 
\S : 非空格 
\d : 数字 
\D : 非数字 
\w : 字符 ( 字母 ,数字,下划线_ ) 
\W : 非字符 
.(点)——任意字符 
. : 真正的点 
\b : 独立的部分 ( 起始,结束,空格 ) 
\B : 非独立的部分

13、()、[]、{}的区别 
() 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。 
(\s*)表示连续空格的字符串。 
[]是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[\s*]表示空格或者*号。 
{}一般用来表示匹配的长度,比如 \s{3} 表示匹配三个空格,\s[1,3]表示匹配一到三个空格。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值