久久青草精品A片狠狠,日韩欧美视频一区二区,亚洲国码AV日韩,国产精品黄在

正則表達(dá)式中的定位符

2017-01-17 17:57:41 10500

定位符

定位符使您能夠?正則表達(dá)式固定到行首或行尾。它們還使您能夠創(chuàng)建這樣的正則表達(dá)式,這些正則表達(dá)式出現(xiàn)在一個單詞內(nèi)、在一個單詞的開頭或者一個單詞的結(jié)尾。

定位符用來描述字符串或單詞的邊界,^和$分別指字符串的開始與結(jié)束,描述單詞的前或后邊界,B表示非單詞邊界。

正則表達(dá)式的限定符有:

字符描述
^匹配輸入字符串開始的位置。如果設(shè)置了 RegExp 對象的 Multiline 屬性,^ 還會與 或 之后的位置匹配。
$匹配輸入字符串結(jié)尾的位置。如果設(shè)置了 RegExp 對象的 Multiline 屬性,$ 還會與 或 之前的位置匹配。
匹配一個字邊界,即字與空格間的位置。
B非字邊界匹配。

注意:不能將限定符與定位點(diǎn)一起使用。由于在緊靠換行或者字邊界的前面或后面不能有一個以上位置,因此不允許諸如 ^* 之類的表達(dá)式。

若要匹配一行文本開始處的文本,請在正則表達(dá)式的開始使用 ^ 字符。不要將 ^ 的這種用法與中括號表達(dá)式內(nèi)的用法混淆。

若要匹配一行文本的結(jié)束處的文本,請在正則表達(dá)式的結(jié)束處使用 $ 字符。

若要在搜索章節(jié)標(biāo)題時使用定位點(diǎn),下面的正則表達(dá)式匹配一個章節(jié)標(biāo)題,該標(biāo)題只包含兩個尾隨數(shù)字,并且出現(xiàn)在行首:

/^Chapter [1-9][0-9]{0,1}/

真正的章節(jié)標(biāo)題不僅出現(xiàn)行的開始處,而且它還是該行中僅有的文本。它即出現(xiàn)在行首又出現(xiàn)在同一行的結(jié)尾。下面的表達(dá)式能確保指定的匹配只匹配章節(jié)而不匹配交叉引用。通過創(chuàng)建只匹配一行文本的開始和結(jié)尾的正則表達(dá)式,就可做到這一點(diǎn)。

/^Chapter [1-9][0-9]{0,1}$/

匹配字邊界稍有不同,但向正則表達(dá)式添加了很重要的能力。字邊界是單詞和空格之間的位置。非字邊界是任何其他位置。下面的表達(dá)式匹配單詞 Chapter 的開頭三個字符,因為這三個字符出現(xiàn)字邊界后面:

/Cha/

 字符的位置是非常重要的。如果它位于要匹配的字符串的開始,它在單詞的開始處查找匹配項。如果它位于字符串的結(jié)尾,它在單詞的結(jié)尾處查找匹配項。例如,下面的表達(dá)式匹配單詞 Chapter 中的字符串 ter,因為它出現(xiàn)在?邊界的前面:

/ter/

下面的表達(dá)式匹配 Chapter 中的字符串 apt,但不匹配 aptitude 中的字符串 apt:

/Bapt/

字符串 apt 出現(xiàn)在單詞 Chapter 中的非字邊界處,但出現(xiàn)在單詞 aptitude 中的字邊界處。對于 B 非字邊界運(yùn)算符,位置并不重要,因為匹配不關(guān)心究竟是單詞的開頭還是結(jié)尾。


提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問題: