\s匹配任意的空白符(包括空格,製表符(tab),換行符,中文全形空格)\s則是任意不是空白符的字元
?涉及到貪婪模式
當正規表示式中包含能接受重複的限定符時,通常的行為是(在使整個表示式能得到匹配的前提下)匹配盡可能多的字元。以這個表示式為例:a.*b,它將會匹配最長的以a開始,以b結束的字串。如果用它來搜尋aabab的話,它會匹配整個字串aabab。這被稱為貪婪匹配。
有時,我們更需要懶惰匹配,也就是匹配盡可能少的字元。前面給出的限定符都可以被轉化為懶惰匹配模式,只要在它後面加上乙個問號?。這樣.*?就意味著匹配任意數量的重複,但是在能使整個匹配成功的前提下使用最少的重複。現在看看懶惰版的例子吧:
a.*?b匹配最短的,以a開始,以b結束的字串。如果把它應用於aabab的話,它會匹配aab(第一到第三個字元)和ab(第四到第五個字元)
正規表示式中 b和 s有什麼區別
字串 abcsdsadas abc asdsadasdabcasdsa 使用 sabc s和 babc b都能匹配中間的abc,這種方法不是重複了麼,s是匹配空格回車等得,b網上教程說得不清楚什麼字元邊界什麼意思。不一樣 babc b匹配的是 abc sabc s匹配的不是 abc 前後還帶空格 a...
正規表示式概述 什麼是正規表示式
正規表示式概述 正規表示式在程式語言中存在著廣泛的應用,特別是用來處理字串。如匹配字串 查詢字串 替換字串等。可以說,正規表示式是一段文字或乙個公式,它是用來描述用某種模式去匹配一類字串的公式,並且該公式具有一定的模式。本小節將介紹正規表示式的基本概念 第乙個正規表示式,以及測試正規表示式的工具co...
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...