當前位置:編程學習大全網 - 行動軟體 - 正則表達式中取反用什麽符號表示?

正則表達式中取反用什麽符號表示?

^。

正則表達式,又稱規則表達式。(英語:Regular Expression,在代碼中常簡寫為regex、regexp或RE),計算機科學的壹個概念。正則表通常被用來檢索、替換那些符合某個模式(規則)的文本。

許多程序設計語言都支持利用正則表達式進行字符串操作。例如,在Perl中就內建了壹個功能強大的正則表達式引擎。正則表達式這個概念最初是由Unix中的工具軟件(例如sed和grep)普及開的。正則表達式通常縮寫成“regex”,單數有regexp、regex,復數有regexps、regexes、regexen。

正則表達式由壹些普通字符和壹些元字符(metacharacters)組成。普通字符包括大小寫的字母和數字,而元字符則具有特殊的含義,我們下面會給予解釋。

在最簡單的情況下,壹個正則表達式看上去就是壹個普通的查找串。例如,正則表達式"testing"中沒有包含任何元字符,它可以匹配"testing"和"testing123"等字符串,但是不能匹配"Testing"。

要想真正的用好正則表達式,正確的理解元字符是最重要的事情。下表列出了所有的元字符和對它們的壹個簡短的描述。

如果我們只是想要確保某個字符沒有出現,但並不想去匹配它時怎麽辦?例如,如果我們想查找這樣的單詞--它裏面出現了字母q,但是q後面跟的不是字母u,我們可以嘗試這樣:

\b\w*q[^u]\w*\b匹配包含後面不是字母u的字母q的單詞。但是如果多做測試(或者妳思維足夠敏銳,直接就觀察出來了),妳會發現,如果q出現在單詞的結尾的話,Iraq,Benq,這個表達式就會出錯。這是因為[^u]總要匹配壹個字符,所以如果q是單詞的最後壹個字符的話,後面的[^u]將會匹配q後面的單詞分隔符(可能是空格,或者是句號或其它的什麽),後面的\w*\b將會匹配下壹個單詞,於是\b\w*q[^u]\w*\b就能匹配整個Iraq fighting。負向零寬斷言能解決這樣的問題,因為它只匹配壹個位置,並不消費任何字符。,我們可以這樣來解決這個問題:\b\w*q(?!u)\w*\b。

  • 上一篇:投訴熱線8090能解決什麽問題
  • 下一篇:冰封魔狼劍txt全集下載
  • copyright 2024編程學習大全網