2014-09-26 35 views
0

假設我有以下可能的輸入:PCRE捕捉相同的字母X instnaces

AAAAAAAAAAAAAAAAAAAAAAA 
BBBBBBBBBBBBBBBBBBBBBBB 
... 
zzzzzzzzzzzzzzzzzzzzzzz 
... 
99999999999999999999999 

我想寫簡單PCRE用來驗證我們是否正在面臨這樣的情況下,即給定的人物「X序列'次。

回答

3

比方說X = 10。

如果你知道這個角色,那很簡單。例如,對於A:

A{10} 

如果你想匹配任何字符X倍,正則表達式爲:

(.)\1{9} 

說明:匹配一個字符,然後嘗試匹配相同的再有9次。

如果你想至少X次,使用這種變量:如果你只是想驗證整個輸入相同的字符序列

(.)\1{9,} 

,這會做:

^(.)\1*$ 

或者此,如果您還需要驗證長度:

^(.)\1{9}$ 
+0

你如總結我們事先知道這條線應該有多長。 OP沒有這樣說。 (OP也沒有說我們*不*。) – 2014-09-26 22:11:05

+0

好吧,顯然我們事先知道這些線條有多長。 :-) – 2014-09-26 22:12:06

+0

@ T.J.Crowder我最後一個例子並不假設。我不太瞭解OP需要哪個特定的情況,所以我只寫了一堆;) – 2014-09-26 22:12:10