我已經遇到了一些代碼多次運行具有與正則表達式:*的含義是什麼?在正則表達式中?
\((\X*?)\)
匹配括號中的一切。如果*重複0次或更多次,是零還是一次,似乎都是無關緊要的。是*嗎?相當於*還是它有兩個組合的特殊含義?
我已經遇到了一些代碼多次運行具有與正則表達式:*的含義是什麼?在正則表達式中?
\((\X*?)\)
匹配括號中的一切。如果*重複0次或更多次,是零還是一次,似乎都是無關緊要的。是*嗎?相當於*還是它有兩個組合的特殊含義?
?
+
或*
後,使該運營商非貪婪,也就是說,它會嘗試匹配最低的次數,而不是最大次數。
例如,匹配{hi}{there}
與{(.*)}
與組hi}{there
匹配,這可能是不期望的。使用非貪婪的{(.*?)}
根據需要給出匹配hi
和there
。
感謝您的快速幫助。我必須得到更多,並熟悉正則表達式作爲第二語言,但這是第一次。 – thatthatisis 2013-03-06 03:33:46
每個人都必須從某個地方開始!很高興我能幫上忙。 – nneonneo 2013-03-06 03:34:06
這是'非貪心' – kev 2013-03-06 03:32:07