欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

正則表達式中的正向預查和負向預查

 更新時間:2019年08月05日 14:08:29   作者:wjwdive  
這篇文章主要介紹了正則表達式中的正向預查和負向預查,本文通過幾個場景給大家分析 ,需要的朋友可以參考下

日常工作當中,大多數(shù)IDE自帶的查找工作都能滿足大多數(shù)需要。

加上正則匹配簡直如虎添翼。匹配個郵箱,電話號什么的不在話下。有時候我們可能會遇到稍微特殊的場景。

Windows 1.03 and Windows 2.0 fisrt Released in 1985 and 1987 respectively.
Windows 95 and Windows 98 are the successor.
Then Windows 2000 and Windows Xp Windows appeared.
Windows Vista is the Latest version of the family.

例如上面這一段話,有幾個場景

1、我們想匹配 Windows 后面是數(shù)字版本號的Windows 和這些字符。如 Windows 1.03 等等。

等 用?: 即 Windwos (?:[\d.]+\b)如下圖,這是直接匹配結果 , 匹配出了Windows 1.03,Windows 2.0, Windows 95,Windows 98,Windows 2000,但是沒有匹配到Windows Xp, Windows Vista,等

2、我們只想匹配滿足這些條件的'Window' ,但不包括后面的字符

用 (?= pattern) 即 Windows (?=[\d.]+\b) 他把Windows的空格也匹配了。這一過程就是正向匹配。

3、如果我想匹配這些Windows 字段,它后面跟的不是數(shù)字或者版本號,我改用

(?!pattern)即 Windows (?![\d.]+\b) 這一過程叫做正向匹配不滿足(我覺得這樣叫跟容易理解), 它匹配后面不跟著滿足pattern( [\d.]+\b) 的Windows。

4、我想匹配Windows前面是數(shù)字的Windows.我們用 (?<=[\d].) Windows 這叫逆向匹配(<左箭頭就說明了是從右往左,好記吧),他們匹配Windows前面是一個或者多個數(shù)字的'Windows'.

如圖這里只匹配到了 和11挨著的 Windows。

5、我想匹配Windows前面不是數(shù)字的Windows。我想匹配 Windows 前面不是數(shù)字的Windows ,通常叫做逆向不匹配。我把它叫做逆向匹配不滿足pattern。

用(?<! pattern)keyword.

它匹配到了 在11之后的 Windows之外的所有Windows(不包括行首的Windows)。

關于零寬斷言,我認為這個說法讓人覺得很學術,不易理解。我的理解是,把零寬理解為關鍵字前面或者后面的正則表達式匹配出來的字符不會被顯示出來,也不被用來當做常規(guī)的子查詢。 它只起到判斷作用。

總結

以上所述是小編給大家介紹的正則表達式中的正向預查和負向預查,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

相關文章

  • 正則表達式的語法

    正則表達式的語法

    正則表達式(regular expression)描述了一種字符串匹配的模式,可以用來檢查一個串是否含有某種子串、將匹配的子串做替換或者從某個串中取出符合某個條件的子串等
    2006-09-09
  • jQuery正則表達式的使用方法步驟詳解

    jQuery正則表達式的使用方法步驟詳解

    本文主要和大家分享的就是jQuery學習中正則的使用,正則在jquery里面并沒有比JavaScript多哪些知識,基本上是一樣的,只是選擇器更好了一點,一起來看看吧
    2016-12-12
  • python 正則表達式 re.sub & re.subn

    python 正則表達式 re.sub & re.subn

    正則表達式一個比較常見的用途是找到所有模式匹配的字符串并用不同的字符串來替換它們。sub方法提供一個替換值,可以是字符串或函數(shù),和一個要被處理的字符串。這篇文章主要介紹了python 正則表達式 re.sub & re.subn,需要的朋友可以參考下
    2017-12-12
  • js正則表達式之match函數(shù)講解

    js正則表達式之match函數(shù)講解

    使用正則表達式模式對字符串執(zhí)行查找,并將包含查找的結果作為數(shù)組返回
    2012-10-10
  • 通過腳本清空標簽p中的class名和style

    通過腳本清空標簽p中的class名和style

    通過腳本清空標簽p中的class名和style...
    2006-10-10
  • JS使用正則去除字符串最后的逗號

    JS使用正則去除字符串最后的逗號

    字符串最后的逗號怎么去除,方法有很多,本文為大家介紹下使用JS正則去除字符串最后逗號,具體實現(xiàn)如下,感興趣的朋友可以參考下
    2013-08-08
  • JavaScript基于正則表達式的數(shù)字判斷函數(shù)

    JavaScript基于正則表達式的數(shù)字判斷函數(shù)

    JavaScript基于正則表達式的數(shù)字判斷函數(shù),需要的朋友可以參考下。
    2011-01-01
  • 淺談正則表達式回溯陷阱

    淺談正則表達式回溯陷阱

    日常編程經(jīng)常會用到正則表達式,躲不開這個陷阱,本文主要介紹了淺談正則表達式回溯陷阱,具有一定的參考價值,感興趣的可以了解一下
    2023-11-11
  • JScript中正則表達函數(shù)的說明與應用

    JScript中正則表達函數(shù)的說明與應用

    JScript中正則表達函數(shù)的說明與應用...
    2006-06-06
  • php的正則表達式完全手冊

    php的正則表達式完全手冊

    正則表達式是煩瑣的,但是強大的,學會之后的應用會讓你除了提高效率外,會給你帶來絕對的成就感。只要認真去閱讀這些資料,加上應用的時候進行一定的參考,掌握正則表達式不是問題。
    2011-02-02

最新評論