2010-09-09 140 views
0

我試圖找出正則表達式如下:正則表達式的HTML標籤

String</td><td>[number 0-100]%</td><td>[number 0-100]%</td><td>String</td><td>String</td> 

此外,一些TD標籤可以有樣式屬性在某些時候。 我嘗試這樣做:

String<.*> 

和返回

String</td> 

而是試圖

String<.*><.*> 

返回任何內容。爲什麼是這樣?

+0

你使用哪種語言的正則表達式? java嗎? – sheeks06 2010-09-09 06:12:35

+0

PHP,但這應該不重要,應該嗎? – codersarepeople 2010-09-09 06:23:18

+0

它的確如此,因爲一些編程語言使用不同的正則表達式語法。 – BoltClock 2010-09-09 06:26:17

回答

1
(.+)</td><td>(1?\d?\d)%</td><td>(1?\d?\d)%</td><td>(.+)</td><td>(.+)</td> 
+0

這很好,但標籤並不總是​​,有時他們會有屬性,並說 – codersarepeople 2010-09-09 06:15:47

1

使用Character類,像<td[^>]*>如果<td> or <td class="abc">

1

嘗試以下操作:

(.+)(<[^>]+>){2}(1?\d?\d)%(<[^>]+>){2}(1?\d?\d)%(<[^>]+>){2}(.+)(<[^>]+>){2}(.+)<[^>]+> 

您可以測試它here

編輯:雖然這將工作在大多數時間,如果>標記的一個屬性中的字符,這個正則表達式將無法正常工作。

+0

'>'在屬性值中是允許的。 – Gumbo 2010-09-09 06:29:28

+0

我正在編寫這個:)。 – Zafer 2010-09-09 06:29:56