本文實(shí)例講述了JS前向后瞻正則表達(dá)式定義與用法。分享給大家供大家參考,具體如下:
定義
x(?=y) 匹配'x'僅僅當(dāng)'x'后面跟著'y'.這種叫做正向肯定查找。
比如,/Jack(?=Sprat)/會(huì)匹配到'Jack'僅僅當(dāng)它后面跟著'Sprat'。/Jack(?=Sprat|Frost)/匹配‘Jack'僅僅當(dāng)它后面跟著'Sprat'或者是‘Frost'。但是‘Sprat'和‘Frost'都不是匹配結(jié)果的一部分。
x(?!y) 匹配'x'僅僅當(dāng)'x'后面不跟著'y',這個(gè)叫做正向否定查找。
比如,//d+(?!/.)/匹配一個(gè)數(shù)字僅僅當(dāng)這個(gè)數(shù)字后面沒有跟小數(shù)點(diǎn)的時(shí)候。正則表達(dá)式//d+(?!/.)/.exec("3.141")匹配‘141'但是不是‘3.141'
form https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions
前面這篇//m.survivalescaperooms.com/article/84839.htm 解釋的比較好懂。
例子:
<html><head> </head> <body> <input id="test" type="text" value="" /> <input id="test" type="text" value="" /> <input id="test" type="text" value="" /> <input id="test" type="text" value="" /> <input id="test" type="text" value="" /> <script> var testStr = "windows 95" /* 1 - 不帶子表達(dá)式匹配 */ var testReg = /^windows .*$/ var result = testStr.match(testReg); console.log("/^windows .*$/="+result) // /^windows .*$/=windows 95 /* 2 - 帶子表達(dá)式匹配 */ var testReg = /^windows (.*)$/ var result = testStr.match(testReg); console.log("/^windows (.*)$/="+result) // /^windows (.*)$/=windows 95,95 /* 3 - 帶子表達(dá)式,不記錄其匹配結(jié)果 */ var testReg = /^windows (?:.*)$/ var result = testStr.match(testReg); console.log("/^windows (?:.*)$/="+result) // /^windows (?:.*)$/=windows 95 /* 4 - 前瞻匹配,匹配位置,正匹配 */ var testReg = /^windows (?=95)95$/ var result = testStr.match(testReg); console.log("/^windows (?=.*)$/="+result) // /^windows (?=.*)$/=windows 95 /* 5 - 前瞻匹配,匹配位置,負(fù)匹配 */ var testStr = "windows me" var testReg = /^windows (?!95)me$/ var result = testStr.match(testReg); console.log("/^windows (?!/d*)$/="+result) // /^windows (?!d*)$/=windows me </script></body></html>PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:
JavaScript正則表達(dá)式在線測(cè)試工具:
http://tools.VeVB.COm/regex/javascript
正則表達(dá)式在線生成工具:
http://tools.VeVB.COm/regex/create_reg
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript替換操作技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》、《JavaScript中json操作技巧總結(jié)》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注