我正在尋找匹配HTML錨點中未包含的所有格式爲foo:12345的文本。例如,我想從以下匹配線1和3:c#正則表達式來匹配特定文本
foo:123456
<a href="http://www.google.com">foo:123456</a>
foo:123456
我已經試過這些正則表達式沒有成功:
負面預測嘗試(錯誤匹配,但不包括最後一位數字)
foo:(\d+)(?!</a>)
負先行與非捕獲分組
(?:foo:(\d+))(?!</a>)
負回顧後嘗試(通配符似乎不支持)
(?<!<a[^>]>)foo:(\d+)
我假設你的最後一個例子意思是'(?] *>)foo:(\ d +)',這樣它將在錨標記中匹配多於一個字符。 – Chris 2012-01-04 18:15:27
幾乎每天都會問這個問題......用正則表達式解析HTML幾乎總是[壞主意](http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self -contained-tags) – 2012-01-04 18:28:36