Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java正则表达式文本替换_Java_Regex_Replace_Pattern Matching - Fatal编程技术网

Java正则表达式文本替换

Java正则表达式文本替换,java,regex,replace,pattern-matching,Java,Regex,Replace,Pattern Matching,我有这样的文字 Some. / text to-match (1) 我想替换/(),因为有下一个 Some_text_to_match_1 如何使用该模式?您可以从两端的非单词字符中修剪字符串(使用.replaceAll(“^\\W+\\\W+$”,”)),然后在字符串中用.替换一个或多个非单词字符块(使用.replaceAll(\\W+“,”)): 见 详情: \W匹配非单词字符 +匹配此量词修改的子模式的一个或多个实例 由于在修剪字符串并替换其中的非单词字符时,我们需要使用两种不同的

我有这样的文字

Some. / text to-match (1)
我想替换
/()
,因为
有下一个

Some_text_to_match_1

如何使用该模式?

您可以从两端的非单词字符中修剪字符串(使用
.replaceAll(“^\\W+\\\W+$”,”)
),然后在字符串中用
.
替换一个或多个非单词字符块(使用
.replaceAll(\\W+“,”)
):

详情:

  • \W
    匹配非单词字符
  • +
    匹配此量词修改的子模式的一个或多个实例

由于在修剪字符串并替换其中的非单词字符时,我们需要使用两种不同的替换,因此我们不能仅使用1
replaceAll

显示您的尝试。难道您不想删除所有非单词字符吗?字符串还包含
-
和空格。所以,有超过
/
需要处理。是的,我需要更换所有的!看,谢谢!它工作得很好!
String s = "Some. / text to-match (1)";
s = s.replaceAll("^\\W+|\\W+$", "").replaceAll("\\W+", "_");
System.out.println(s);