2011-02-09 62 views
0

林本正則表達式模式工作:如何使正則表達式的一部分可選?

|img_class.*?<img src="(.*?)"(.*?)<\/td>|ms 

但我想讓它這樣<img src="(.*?)"是可選的(不僅僅是SRC部分),因爲img_class TD有時是空的,當它是我的模式失敗。

我試過|img_class.*?(<img src="(.*?)")?(.*?)<\/td>|ms但它永遠不會匹配。我知道我可以使用XPath或更好的東西,但即時通訊使用一個很大的類,我不想現在重新編碼所有東西)。

+2

你可以添加一個你想要匹配的文本樣本嗎?寬度和沒有可選部分。因爲你更新的正則表達式看起來是正確的。 – 2011-02-09 20:28:13

+0

需要注意的是,解析HTML有比正則表達式更好,還有實際的SGML/HTML解析器。 – 2011-02-10 16:07:01

回答

1
|img_class.*?(?:<img src="(.*?)")?(.*?)<\/td>|ms 
相關問題