我是一個Java初學者,給予相同的標點符號
"Se excluye arbitraje de ley y [rotura de lunas]Gar_1.
Se excluye arbitraje de ley y [rotura de lunas]noGar"
我想找出
"[rotura de lunas]Gar_1" and "[rotura de lunas]noGar".
那麼一句,我寫了下面的正則表達式:
"(.\*)Gar_1 (.\*) \\1noGar".
只要在連接到"Gar_1"
的字符串和字符串atta之間沒有標點符號請致電"noGar"
。但是,只要我有一段時間(.
),就像我在開始時寫的句子那樣,就找不到匹配。我試過在我的正則表達式中加入"(\\pP)*"
之類的東西,試圖在我想要識別的兩個字符串之間加入標點符號的可能性,但這也不起作用。
有人可以幫我嗎?
FYI補充說明 – zx81
謝謝!你的代碼和解釋非常清楚,並且幾乎完美。唯一的問題是它用'noGar'取代了所有的'Gar_1',而我想只替換那些與前面的詞組相同的'Gar_1'作爲相應的'noGar'。也就是說,如果我有''Gar_1'blabla [rotura de lunas] noGar blabla [arbitraje medico] Gar_1',我只想用'noGar'替換與'[rotura de lunas]'對應的'Gar_1'。爲了做到這一點,我不能用你上面寫的。有什麼建議麼? – user3729787
'我想只用'noGar'替換''['rotura de lunas]'的'Gar_1',這很清楚,這正是我的正則表達式所做的,我想呢? :)這組詞被捕獲爲第2組,在'noGar'之前我們再次匹配該組2。或者我錯過了什麼? – zx81