正則表達式中^的用法
阿新 • • 發佈:2019-02-19
num 字符 alt html table live codes 找到 dex
https://www.cnblogs.com/ytc6/p/8478989.html
用法一: 限定開頭
文檔上給出了解釋是匹配輸入的開始,如果多行標示被設置成了true,同時會匹配後面緊跟的字符。 比如 /^A/會匹配"An e"中的A,但是不會匹配"ab A"中的A
用法二:(否)取反
當這個字符出現在一個字符集合模式的第一個字符時,他將會有不同的含義。
比如: /[^a-z\s]/會匹配"my 3 sisters"中的"3"
這裏的”^”的意思是字符類的否定,上面的正則表達式的意思是匹配不是(a到z和空白字符)的字符。
總結:
什麽時候”^”是否定字符,什麽時候是匹配開始行
表示限定開頭的示例:
1 2 3 4 5 |
/ [(^\s + )(\s + $)] / g
(^cat)$
(^cat$)
^(cat)$
^(cat$)
|
表示否定的示例:
1 2 3 |
[^a]表示“匹配除了a的任意字符”。
[^a - zA - Z0 - 9 ]表示“找到一個非字母也非數字的字符”。
[\^abc]表示“找到一個插入符或者a或者b或者c”。
|
經過對比,只要是”^”這個字符是在中括號”[]”中被使用的話就是表示字符類的否定,如果不是的話就是表示限定開頭。我這裏說的是直接在”[]”中使用,不包括嵌套使用。
其實也就是說”[]”代表的是一個字符集,”^”只有在字符集中才是反向字符集的意思。
正則表達式中^的用法