我有一個HTML文檔,我需要能夠在文檔文本中找到可以或不可以包含連字符的精確匹配。我使用Java和Jsoup。在jsoup中查找包含連字符的確切文本
HTML文檔例如可以有以下幾種:
<li>some text ABCDE some text</li>
<li>some text ABCDE-kriterierna some text</li>
或
<li>ABCDE</li>
<li>ABCDE-kriterierna</li>
我有我需要匹配的HTML文檔中的文本輸入字符串列表。其中兩個輸入字符串可能是「ABCDE」和「ABCDE-kriterierna」。 我需要用Jsoup或正則表達式來精確匹配這些輸入單詞。也就是說,「ABCDE-kriterierna」只能找到第二個列表元素,而不是第一個。輸入字「ABCDE」應該只能找到第一個列表元素,而不是第二個。
對於輸入詞「ABCDE-kriterierna」,這沒有問題。這Jsoup CSS選擇器將只找到第二個列表元素:
:containsOwn(ABCDE-kriterierna)
的問題是,我無法找到一個正則表達式/選擇器爲輸入字「ABCDE」,只找到第一個列表元素。我不能使用正則表達式\sABCDE\s
,因爲我不能假定周圍的空間。 我試過以下,但都找到「ABCDE-kriterierna」。
:matchesOwn(\bABCDE\b)
:containsOwn(ABCDE)
任何想法?請幫助...
如果'ABCDE'由空格包圍,你可以使用'\ s',而不是'\ B'。 – Rahul
@Rahul不幸的是,情況並非總是如此。我已經更新了問題中的示例。 – poa
_我有一個輸入單詞列表_:當你說**單詞**時,它是在自然語言的背景下,如英語。然後它應該被空間包圍。 – Rahul