正則表達(dá)式是Perl語言的特色,基本的語法不是很難,但是編寫一個(gè)符合需求、高效的正則表達(dá)式,還是有一些挑戰(zhàn)的,下面這篇文章主要給大家介紹關(guān)于perl正則表達(dá)式的一些雜項(xiàng)內(nèi)容。
$也能匹配/n
見Perl語言入門,page 132, 注釋6
1 /^.*$/能匹配"/n"么?能!因?yàn)?不僅能匹配行尾,也能匹配/n
2 /^.*$/能匹配"b/n"么?能!.能b匹配. /n匹配$
3 /^.*$/能匹配"/nb"么?不能!為什么?因?yàn)槟J(rèn)情況下,.不能匹配/n,把模式改一下變成/^.*$/s就可以了,/s表示.能匹配任意字符,包括/n
多行匹配/m
看一個(gè)例子,這段代碼輸出:hello
?
?
稍微改變一下,加上/m選項(xiàng)
?
?
現(xiàn)在輸出變成了
hello
hello
hello
注解:
默認(rèn)情況下,^和$匹配整個(gè)字符串的開頭和結(jié)尾,但是加上/m之后,^和$就匹配每行的開頭和結(jié)尾。也就是說,因?yàn)樽址杏袚Q行符/n,所以/m選項(xiàng)使得^$匹配每行的開頭和結(jié)尾。
如果字符串中沒有換行符,那么/m選項(xiàng)是不起作用的。
關(guān)于perl正則表達(dá)式的一些雜項(xiàng)內(nèi)容就介紹完了,希望這篇文章對大家有所幫助,如果你還有疑問歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的,同時(shí)也非常感謝大家對武林技術(shù)頻道的支持!
新聞熱點(diǎn)
疑難解答
圖片精選