[英]Java 1.7. How to replace two characters side by side in a regular expression?
我有代码:
String str = "1 */ * / 2";
str = str.replaceAll("\\*/", " ");
System.out.println(str);
他给了我下一个结果,这是正确的:
1 * / 2
但是我需要得到相反的结果,我这样做:
String str = "1 */ * / 2";
str = str.replaceAll("[^\\*/]", " ");
System.out.println(str);
得到:
* / * /
但不是:
* /
我只需要将这两个字符放在一起,单独排除*和/
我怎样才能做到这一点?
replaceAll(regex, replacement)
尝试搜索由regex
表示的模式,并将该匹配 replacement
为replacement
内容。 如果你不想替换它,但是让我们说只打印它,而不是String#replaceAll
使用Matcher#find
like
String str = "1 */ * / 2";
Pattern p = Pattern.compile("\\*/");
Matcher m = p.matcher(str);
while(m.find()){
String match = m.group();
//do something with match
System.out.println(match);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.