正則表達(dá)式特別需要注意的點(diǎn):“空“字符的匹配方法
在正則表達(dá)式中,[...]
代表1個(gè)字符,不管里面有多少字符,最終這個(gè)東西的結(jié)果都是1個(gè)字符。
對于表達(dá)式[^a]
表達(dá)的匹配除了a之外的字符,并且是1個(gè)字符。
需要注意的是,有些特殊字符是不會被匹配的。
我們看一個(gè)示例,對于txt文件testRegularExperxx.txt
aaa bbb
對于該文件,輸入命令grep -n '[^a]' testRegularExperxx.txt
得到的結(jié)果是:
你會發(fā)現(xiàn),對于看起來的“空行”的處理似乎是不一樣的,為什么呢?
仔細(xì)看看文件,雖然都是空行,但是,有的是空格,有的是 \t,有的是 \n。它們看起來都是空的,但是處理方式不一樣。
這里,對于[^]a
除了a之外的1個(gè)字符,能夠識別空格和 \t,而忽略掉 \t。
我們換一個(gè)新的文件,看看文件的內(nèi)容
選中的時(shí)候顏色不同,也可以看出端倪來。
HexCharDescriptionEscape Character09HTHorizontal Tab\t0aLFLine Feed\n20spaceSpace
所以,你就知道了[...]
的特殊的地方了。
那么如何識別空行呢?也就是僅包含\n
的行。
使用^$
識別!這也是比較特殊的點(diǎn)了。
小結(jié) [...]
不能識別\n
^$
可以識別\n
,但是注意,是識別一行僅有\n
的空行
另外,正則表達(dá)式的不同規(guī)則,是可以進(jìn)行花樣排列組合,從而識別復(fù)雜單詞!進(jìn)一步也可以作為詞法分析的實(shí)用工具。
到此這篇關(guān)于正則表達(dá)式特別需要注意的點(diǎn):“空“字符的匹配的文章就介紹到這了,更多相關(guān)正則表達(dá)式匹配空白內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于正則表達(dá)式實(shí)現(xiàn)UL下LI的樣式替換功能
這篇文章主要介紹了基于正則表達(dá)式實(shí)現(xiàn)UL下LI的樣式替換功能,涉及javascript使用正則表達(dá)式進(jìn)行頁面元素屬性動態(tài)操作的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-05-05正則表達(dá)式解決input框固定輸入值得格式(金額,特殊字符)
這篇文章主要介紹了正則表達(dá)式解決input框固定輸入值得格式(金額,特殊字符),本文分為三種情況給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10js正則表達(dá)式之RegExp對象屬性lastIndex,lastMatch,lastParen,lastContext,
js正則表達(dá)式之RegExp對象屬性lastIndex,lastMatch($&),lastParen($+),lastContext,rightContext屬性的講解2012-10-10詳解正則表達(dá)式Matcher類中g(shù)roup方法
這篇文章主要介紹了正則表達(dá)式Matcher類中g(shù)roup方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-08-08php 正則表達(dá)式提取網(wǎng)頁超級鏈接url的函數(shù)
php 正則表達(dá)式提取網(wǎng)頁超級鏈接url的函數(shù)2010-01-01