2017-09-20 140 views
-5

兩個符號星之間的替換文本我不擅長用正則表達式,並努力實現以下場景通過正則表達式

String s="Example$for$string%is%notworking"; 

現在我需要與其他字符串替換符號標誌之間的字符串

Examplewithstringarenotworking 

我現在使用的

s=s.replaceall("\\$(.*?)\\%", "bird"); 

,但沒有改變發生上述表達式

回答

1

嘗試用下面的代碼:

String s="Example$for$string%is%notworking"; 
s.replaceAll("[$&+,:;[email protected]#|'<>.^*()%!-]", "otherstring") 

但在上述方法中,我們沒有考慮很多特殊字符,例如一些DOS的笑臉像little anglewhite smily face

所以可能需要嘗試對一些事情。這是你想要保留的字符。下面的一些事情,我以A-Z,如下A-Z和0-9:

s.replaceAll("[^A-Za-z0-9]", "otherstring") 
+0

它不是用兩條標誌之間的文本值,而不是它是附加在符號位置的新字符串 – John