我嘗試了很多事情,但我堅持我的正則表達式,每當滿足條件連續2次。在這種情況下,它只將其視爲一種表達而不是2.正則表達式PCRE:驗證字符串匹配的第一組字符串,而不是最後一個
\[ame\=[^\.]+(.+)youtube\.(.+)v\=([^\]\&\"]+)[\]\'\"\&](.+)\[\/ame\]
例如,
[ame =「http://www.youtube.com/watch?v=brfr5CD2qqY」] [B] [COLOR = yellow] http://www.youtube.com/watch?v=brfrx5D2qqY [/ color] [/ B] [/ color] [/ U] [B] [COLOR = yellow]或[/ COLOR] [/ B] [B] [COLOR = yellow] B [/ COLOR] [/ B] ] [ame =「http://www.youtube.com/watch?v=M9ak3rKIBAU」] [B] [COLOR = yellow] http://www.youtube.com/watch?v=M9a3arKIBAU [/ COLOR] [/ B] [/ B] [B] [COLOR = yellow] or [/ COLOR] [/ B] [B] [COLOR = yellow] C [/ COLOR] [/ B] [ame =「http: //www.youtube.com/watch?v=7vh--3pyq5U"][COLOR=yellow]http://www.youtube.com/watch?v=7vh--3pyq5U[/COLOR][/ame]
In t帽子的情況下,這個正則表達式將不會匹配所有3個選項,它將它作爲一個整體。
任何想法如何使一個表達,會說匹配第一個"[/ame]"
?
歡迎來到SO!總是儘量簡化你的例子,使它們小而易於理解。還要讓它更清楚你得到的和你實際得到的。在這種情況下,如果你把每個'+'非貪婪的都當成'+?'它不能解決你的問題嗎? –