[英]Java Regex to get the text from HTML anchor (<a>…</a>) tags
我正在嘗試在某個標簽內獲取文本。 所以,如果我有:
<a href="http://something.com">Found<a/>
我希望能夠檢索Found
文本。
我正在嘗試使用正則表達式。 如果<a href="http://something.com>
保持不變,但事實並非如此,我能夠做到這一點。
到目前為止我有這個:
Pattern titleFinder = Pattern.compile( ".*[a-zA-Z0-9 ]* ([a-zA-Z0-9 ]*)</a>.*" );
我認為最后兩部分 - ([a-zA-Z0-9 ]*)</a>.*
- 還可以,但我不知道該如何處理第一部分。
正如他們所說,不要使用正則表達式來解析HTML。 如果你意識到這些缺點,你可能會僥幸逃脫。 嘗試
Pattern titleFinder = Pattern.compile("<a[^>]*>(.*?)</a>", Pattern.DOTALL | Pattern.CASE_INSENSITIVE);
Matcher regexMatcher = titleFinder.matcher(subjectString);
while (regexMatcher.find()) {
// matched text: regexMatcher.group(1)
}
將迭代字符串中的所有匹配項。
它不會處理嵌套的<a>
標記並忽略標記內的所有屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.