通过正则表达式替换两个符号之间的文本

时间:2017-09-20 10:29:12

标签: java regex

我对正则表达式并不好,并试图实现以下场景

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

现在我需要将符号符号之间的字符串替换为其他字符串

Examplewithstringarenotworking

我现在正在使用

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

但上述表达式

没有发生任何变化

1 个答案:

答案 0 :(得分:1)

尝试使用以下代码:

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

但是在上面的方法中,我们不会考虑像little anglewhite smily face

这样的DOS表情符号中的许多特殊字符。

所以可能需要尝试一些相反的事情。这是你想要保留的角色。有些事情如下,我正在采取A-Z,a-z和0-9如下:

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