正则基础学习(1)

2019-03-12  本文已影响0人  张路1806

正则学习

\b是正则中表示分隔符的含义
比如精确地查找hi就使用\bhi\b

.代表地是非换行符地任意字符

*代表的是数量,而且是任意数量

.*连起来的意思就是任意数量的非换行符

\bhi\b.*lucy\b代表的就是hi后面有lucy字段的

\d代表的是数字,比如0\d\d-\d\d\d\d\d\d\d\d表示0开头然后两个数字,加上8个数字

{num}代表的就是重复的次数,比如上面的写法就可以改写成0\d{2}-\d{8}

\w可以看成word,这里代表这数字,字母,汉字,下划线

\s可以看成space,这里代表的是空格,不论是换行符,还是中英文空白符

+代表的重复

+ * {num}的区别,区别在于+代表重复,且至少有一次。*则不限制数字,并且可以数量为0,{mun}则是写得非常详细的数量,{num-num}表示数量是哪一个范围

^ 表示字符串开头

$ 表示字符串结尾

那么和\b有什么不同呢?这是分隔符表示开头或结尾,而^,$/是确定字符串的开始和结尾。

^\d{5,8}\$表示数字是5到8位

当查找一个.时需要使用一个转义的字符\.

其实+类的是限定符 +,*,?,{num},{num,},{num,num},其中?代表的是重复0次或者1次,{num,}代表的是最少,而没有最多

[.?!]表示标点符号的集合,[a-z]表示的是小写的字符串合集

分支条件: | 其实就是或者。不过注意的就是,当从左向右判断的时候,如果先满足了前面的条件,就不会进行后面的判断了
\d{5}|\d{5}-\d{4}这个正则永远不会返回9位的数字,因为前五位都是数字,被第一个条件匹配。

()的作用是将需要重复的多个字符串放入其中,作为一个单元小组来使用限定符(\d{1,3}\.){3}\d{1,3}

用反义的方式,其实就是不包含,\W等。这些方式使用的是大写元字符,而一些范围的排除使用[^]的方式,比如<a[^>]+>匹配用尖括号括起来的以a开头的字符串

待续

上一篇 下一篇

猜你喜欢

热点阅读