以下正則表達式在string.replaceall()中使用,但不適用於string.replaceFirst()。java 6 replaceall replacefirst
字符串:
TEST|X||Y|Z||
預期輸出:
TEST|X|**STR**|Y|Z||
正則表達式:
string.replaceAll("(TEST\\|[\\|\\|]*\\\\|)\\|\\|", "$1|ST|");
Output (not desired):
TEST|X|**STR**|Y|Z|**STR**|
string.replaceFirst("(TEST\\|[\\|\\|]*\\\\|)\\|\\|", "$1|ST|");
沒有任何調整串製成。
請幫忙!
在此先感謝。
考慮的最後兩個「||」。它們在Z之前是如何匹配的?我沒有看到任何匹配的正則表達式。 – djna 2010-09-26 17:28:34
@djna - 我沒有看到任何一個..我實際上是在跑代碼。 – 2010-09-26 17:36:10
我認爲他的問題是他有一個意外的OR – djna 2010-09-26 17:47:23