因为要做解析的原因,接触最多的就是string,经常碰到这样那样的字符串,以前都是用什么replace和split的分割。今天看到利器的时候,看到了正则,想到用这个且不是更简单,所以复习了下。做了点笑笔记。写了几个很简单的正则。
^:表示开头的匹配 $:表示结尾的匹配
[]:单个字符匹配 [012456789] = [0-9] 匹配一个数字 gr[ea]y = grey || gray
[^u]:表示非u的一个字符
. :匹配任何一个字符 "07.04.76" = "07/04/76 || 07-04-76 || 07.04.76
|:表示或 gr[ea]y = gr(e|a)y || grey|gray
单词边界: /b "/bis/b" "This is a cat." 只匹配出is
字符串边界符号: /A 开始 /z 结束位置 "/AThis is a cat/z" 匹配上面的字符串的时候只有.没有匹配进去
字符串边界内容,就是能匹配的东西一定是[a-zA-Z0-9]
重复数量符号:"?" 0或1次 "+" 1次或多次 "*" 0次或多次 " +" 匹配多个空格
具体次数匹配:{n} 具体重复n次 {n,m} 重复n~m次
"/bthe +the/b" "/b(the +){2}" "/b(the) +/1/b"
这里的/1其实就是前面组元的引用。/n就是表示第n个组元。
现在才看明白这个/n,哈哈。这里的/1 = (the)重复一次。
成为反向引用~虽然不太理解这个名词,不过明白了哈。
下周去买本《精通正则表达式》,哈哈我要去卓越买,因为书到的很快。也比我们这的文化市场便宜。嘿嘿!