PHP網(wǎng)站制作關(guān)于字串符重復(fù)的解決方法,很多時(shí)候,會(huì)希望指明某個(gè)字符串或字符類(lèi)將不止一次地出現(xiàn)??梢栽谡齽t表達(dá)式中使用兩個(gè)特殊字符代替。深圳網(wǎng)站制作公司提示符號(hào)“*”表示這個(gè)模式可以被重復(fù)0次或更多次,符號(hào)“+”則表示這個(gè)模式可以被重復(fù)1次或更多次。這兩個(gè)符號(hào)應(yīng)該放在要作用的表達(dá)式的后面。
例如:[[:alnum:]]+表示至少有一個(gè)字母字符。
PHP網(wǎng)站制作關(guān)于子表達(dá)式
通常,將一個(gè)表達(dá)式分隔為幾個(gè)子表達(dá)式是非常有用的,例如,可以表示“至少這些字符串中的一個(gè)需要精確匹配”??梢允褂脠A括號(hào)來(lái)實(shí)現(xiàn),與在數(shù)學(xué)表達(dá)式中的方法一樣。例如:(very)*large可以匹配large、verylarge、veryverylarge等。
PHP網(wǎng)站制作關(guān)于子表達(dá)式計(jì)數(shù)
可以用在花括號(hào)({})中的數(shù)字表達(dá)式來(lái)指定內(nèi)容允許重復(fù)的次數(shù)??梢灾付ㄒ粋€(gè)確切的重復(fù)次數(shù),如{3}表示重復(fù)3次。也可以指定一個(gè)重復(fù)次數(shù)的范圍,如{2,4}表示重復(fù)2~4次。還可以指定一個(gè)開(kāi)底域的重復(fù)范圍,如{2,}表示至少要重復(fù)兩次。
例如:(very){1,3}表示匹配very、veryvery和veryveryvery。
PHP網(wǎng)站制作關(guān)于定位
[a-z]模式將匹配任何包含了小寫(xiě)字母字符的字符串。無(wú)論該字符串只有一個(gè)字符,或者在整個(gè)更長(zhǎng)的字符串中只包含一個(gè)匹配的字符,都沒(méi)有關(guān)系。也可以確定一個(gè)特定的子表達(dá)式是否出現(xiàn)在開(kāi)始、末尾或在兩個(gè)位置都出現(xiàn)。當(dāng)要確定字符串中只有要找的單詞而沒(méi)有其他單詞出現(xiàn)時(shí),它將相當(dāng)有用。脫字符號(hào)(^)用于正則表達(dá)式的開(kāi)始,表示子字符串必須出現(xiàn)在被搜索字符串的開(kāi)始處,字符$用于正則表達(dá)式的末尾,表示子字符串必須出現(xiàn)在字符串的末尾。
【示例】以下是在字符串開(kāi)始處匹配bob:^bob
這個(gè)模式將匹配com出現(xiàn)在字符串末尾處的字符串:com$最后,這個(gè)模式將匹配只包含a到z之間一個(gè)字符的字符串:
^[a-z]$18.5.6
分支可以使用正則表達(dá)式中的一條豎線來(lái)表示一個(gè)選擇。例如,如果要匹配com、edu或net,就可以使用如下所示的表達(dá)式:
(com)|(edu)|(net)
PHP網(wǎng)站制作關(guān)于特殊字符
如果要匹配特殊字符,如.、{或者$,就必須在它們前面加一個(gè)反斜杠(\)。如果要匹配一個(gè)反斜杠,則必須用兩個(gè)反斜杠(\\)來(lái)表示。
在PHP中,必須將正則表達(dá)式模式包括在一個(gè)單引號(hào)字符串中。使用雙引號(hào)引用的正則表達(dá)式將帶來(lái)一些不必要的復(fù)雜性。PHP還使用反斜杠來(lái)轉(zhuǎn)義特殊字符,例如反斜杠。如果希望在模式中匹配一個(gè)反斜杠,必須使用兩個(gè)反斜杠來(lái)表示它是一個(gè)反斜杠字符,而不是一個(gè)轉(zhuǎn)義字符。
同樣,由于相同的原因,如果希望在一個(gè)雙引號(hào)引用的PHP字符串中使用反斜杠字符,必須使用兩個(gè)反斜杠。這可能會(huì)有些混淆,這樣要求的結(jié)果將是表示一個(gè)包含了反斜杠字符的正則表達(dá)式的一個(gè)PHP字符串需要4個(gè)反斜杠。PHP解釋器將這4個(gè)反斜杠解釋成兩個(gè)。然后,由正則表達(dá)式解釋器解析為一個(gè)。$符號(hào)也是雙引號(hào)引用的PHP字符串和正則表達(dá)式的特殊字符。要使一個(gè)$字符能夠在模式中匹配,必須使用\\$。因?yàn)檫@個(gè)字符串被引用在雙引號(hào)中,PHP解釋器將其解析為\$,而正則表達(dá)式解釋器將其解析成一個(gè)$字符。
? 在POSIX正則表達(dá)式中,用于方括號(hào)外面特殊字符。
? \:轉(zhuǎn)義字符。
? ^:在字符串開(kāi)始匹配。
? $:在字符串結(jié)尾匹配。
? .:匹配任意字符,除了換行符外(\n)。
? |:選擇分支的開(kāi)始。
? (:子模式的開(kāi)始。
? ):子模式的結(jié)束。
? *:重復(fù)零次或者多次。
? +:重復(fù)一次或者多次。
? {:最小或者最大量記號(hào)的開(kāi)始。
? }:最小或者最大量記號(hào)的結(jié)束。
? 在POSIX正則表達(dá)式中,用于方括號(hào)里面特殊字符。
? \:轉(zhuǎn)義字符。
? ^:非,僅用在開(kāi)始位置。
? -:用于指明字符范圍。好了,網(wǎng)站制作公司本文關(guān)于“PHP網(wǎng)站制作關(guān)于字串符重復(fù)的解決方法”知識(shí)分享就到這里,謝謝關(guān)注,博納網(wǎng)絡(luò)編輯整理。