正則表達(dá)式中的正向預(yù)查和負(fù)向預(yù)查實(shí)例分析
本文實(shí)例講述了正則表達(dá)式中的正向預(yù)查和負(fù)向預(yù)查。分享給大家供大家參考。具體分析如下:
這里先來看一個(gè)例子,再來解釋什么是正向預(yù)查。
例子:有一段內(nèi)容為"coming soon,going gogogo",要求把com和go查找出來。代碼如下:
<head>
<script type="text/javascript">
//正向預(yù)查
function t1(){
var con = document.getElementsByName('content')[0].value;
var reg = /\b[\w]+(?=ing\b)/g;//匹配帶ing的單詞,但是不要ing。注意:如果ing后不加\b,類似于goingabc也會(huì)匹配。
alert(con.match(reg));
}
</script>
</head>
<body>
<textarea rows="5" cols="30" name="content"></textarea><br />
<button onclick="t1();">正則預(yù)查</button><br />
</body>
</html>
以上面的實(shí)例來講解正向預(yù)查:先查出邊界,再找到與[\w]+匹配的字,(?=ing)表示先向后探測(cè),看看有沒有ing。如果有,則把前面的匹配出來;如果沒有,則光標(biāo)往后移一位,繼續(xù)探測(cè)。這個(gè)過程就是正向預(yù)查:預(yù)先判斷為某個(gè)值 。
所謂負(fù)向預(yù)查,就是預(yù)先判斷不為某個(gè)值。文本框輸入內(nèi)容為"win7,winxp,win95,win98,win2003"
<head>
<script type="text/javascript">
//正向預(yù)查
function t1(){
var con = document.getElementsByName('content')[0].value;
var reg = /\bwin(?!95\b)/g;//
alert(con.match(reg));
}
</script>
</head>
<body>
<textarea rows="5" cols="30" name="content"></textarea><br />
<button onclick="t1();">正則預(yù)查</button><br />
</body>
</html>
上面兩個(gè)例子是從前往后正向/負(fù)向預(yù)查----相關(guān)信息百度搜索"零寬斷言"。JS不支持向前正向/負(fù)向預(yù)查,而PHP支持。
希望本文所述對(duì)大家的正則表達(dá)式學(xué)習(xí)有所幫助。
相關(guān)文章
正則表達(dá)式(regex) 貪婪模式、懶惰模式使用方法
這篇文章主要介紹了正則表達(dá)式(regex) 貪婪模式、懶惰模式使用方法,需要的朋友可以參考下2015-10-108個(gè)你應(yīng)該了解的正則表達(dá)式提高你的工作效率
正則表達(dá)式也可以被當(dāng)作是一門語言,入門時(shí)可能很吃力,不過一旦學(xué)會(huì)了就方便很多,在處理一些比較復(fù)雜的替換時(shí),正則表達(dá)式就會(huì)發(fā)揮它的真正作用,本文整理了一些常用的正則,感興趣的朋友可以了解下,或許對(duì)你有所幫助2013-01-01基于Python正則表達(dá)式提取搜索結(jié)果中的站點(diǎn)地址
正則表達(dá)式對(duì)于Python來說并不是獨(dú)有的,最近在鼓搗一個(gè)東西把google搜索的結(jié)果中所有的站點(diǎn)地址導(dǎo)出,于是想到用python正則表達(dá)式提取搜索結(jié)果中的站點(diǎn)地址,小編把具體實(shí)現(xiàn)思路整理分享給大家2015-10-10正則表達(dá)式、分組、子匹配(子模式)、非捕獲子匹配(子模式)
前面我們知道正則表達(dá)式有很多元字符表示匹配次數(shù)(量詞),都是可以重復(fù)匹配前面出現(xiàn)的單個(gè)字符次數(shù),需要的朋友可以參考下2016-06-06淺析lastIndex對(duì)正則表達(dá)式結(jié)果的影響
js中正則表達(dá)式的使用方式有兩種,一種是正則表達(dá)式對(duì)象的方法,一種是字符串對(duì)象的方法。下面通過本文給大家分享lastIndex對(duì)正則表達(dá)式結(jié)果的影響,需要的朋友參考下吧2017-11-11如何實(shí)現(xiàn)正則表達(dá)式的JavaScript的代碼高亮
這篇文章主要介紹了如何實(shí)現(xiàn)正則表達(dá)式的JavaScript的代碼高亮方法,需要的朋友可以參考下2014-05-05