0
我有一個功能,它在一個冗長的字符串中找到一個單詞。java:找到一個模式的整個匹配
如果變量「v」包含字符串<vocab></vocab>
之間
if(p.matches("\\W"+v+"\\W"))
我想,這一行應匹配v是\ n或\噸或空間之間的完整的字,並沒有包含在線匹配換句話說。
這是我的字符串:
<meta>
<vocab>called</vocab>
</meta>
<para>
called to-VP,Reid-NP,television cameras-NP
called to-VP,Reid-NP,one of-NP
one of-VP,Reid-NP,ornate rooms-NP
called to-VP,Reid-NP,Capitol-NP
called to-VP,Reid-NP,ceremony-NP
passed on-VP,last week-NP,spending bill-NP
passed on-VP,last week-NP,House-NP
passed on-VP,last week-NP,Senate-NP
officially complete-VP,ceremony-VP/NP,action-NP
called to-VP,television cameras-NP,one-NP
called in-VP,television cameras-NP,Capitol-NP
called for-VP,television cameras-NP,ceremony-NP
called-VP,Reid-NP,television cameras-NP
age-NP,last week-NP,event-num
</para>
我不能說你的問題是明確表示,整個串在任一端返回true,因此
.*
,你可以改寫和詳細點嗎? –不確定你的實際問題或問題,但作爲一個小記錄:我會使用'\ b'而不是'\ W'來匹配單詞邊界,因爲'\ b'也將匹配開頭或結尾該字符串(對於\ W而言不是真的)。 – Mario
找到的答案... if(p.matches(「。* \\ b」+ t +「\\ b。*」)) –