2012-10-25 110 views
-2

我需要匹配像下面正則表達式匹配的字符串重複

session1_******.php 

難道我不喜歡這樣的文件?

{session1_}^(.*).php 
+1

'我做這樣的事情嗎?'你的意思是你甚至沒有測試它? –

+0

還在學習Regex。語法對我來說是新的。 –

回答

1

最直接的答案

^session1_.*\.php$ 

A carat(^)i用於表示字符串的開始或否定字符類(例如, [^ abc] ...不是「a」,「b」或「c」),它在正則表達式中沒有任何意義。

只有在需要捕獲結果時才需要括號。

句點(。)必須轉義。

假設這是您匹配的整個字符串,^ ... $需要從頭到尾完整匹配。如果在開始之前可能有文本刪除^,或者可能會有文本,因爲最後刪除$。

+1

克拉也用於否定字符類別。 –

+0

此外,如果您需要表達重複的子模式,則無論您在做什麼捕捉,都必須使用圓括號。 –

+0

添加了對char類的編輯。我同意這些parens,但是從技術上講,你可以使用(?:)來代替,這允許重複而不需要捕獲。 –

2

此正則表達式將匹配你所追求的:

^session1_.*\.php$ 

注逃脫點\.意思是文字點(不是正則表達式「任何字符」)