2012-05-21 55 views

回答

1

^如果字符串與091之間開始,而不是將只匹配的數量。 您應該匹配正則表達式中的單詞邊界, 否則它將獲取那些以091開頭的表達式,但後面的數字超過8位。

見這個表達式\b((091)\d{8})\b在工作:http://regexr.com?310ra

括號中的caputred組會給你所需要的數量。

+2

您並不需要所有這些捕獲組。你可以刪除所有的括號,結果是整個比​​賽。 – stema

+0

@stema我同意。感謝您指出了這一點。 – DhruvPathak

+0

謝謝,我試過你的示例,它工作正常! –

3

你應該匹配一個word boundary(\ B)

+0

圓括號還應該包含'\ d {8}'以在捕獲組中包含整個單詞。像'\ b(091 \ d {8})'。 – phatfingers

+0

@phatfingers,根本不需要括號。爲什麼你需要一個捕捉組,當組是整個模式? – stema

+0

感謝您的關注 –

相關問題