Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.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_String_Split_Expression - Fatal编程技术网

用java正则表达式替换空格和特定模式

用java正则表达式替换空格和特定模式,java,string,split,expression,Java,String,Split,Expression,我有点不懂正则表达式。 我有一根这样的线: "aaa - bbb - ccc --> ddd" 我需要一个正则表达式来帮助我替换空格“和”-->“”,因此在替换后,我将得到该字符串作为结果: "aaa-bbb-cccddd" 请提供一些帮助?如果您只需要一个表达式,可以使用以下表达式: String newOne = old.replaceAll("[ ]|(-->)", ""); 这意味着:用空字符串替换所有”或--> 但你有很多选择: "(-->)?[ ]?" //

我有点不懂正则表达式。 我有一根这样的线:

"aaa - bbb - ccc --> ddd"
我需要一个正则表达式来帮助我替换空格
”-->“
”,因此在替换后,我将得到该字符串作为结果:

"aaa-bbb-cccddd"

请提供一些帮助?

如果您只需要一个表达式,可以使用以下表达式:

String newOne = old.replaceAll("[ ]|(-->)", "");
这意味着:用空字符串替换所有
-->

但你有很多选择:

"(-->)?[ ]?"
// or using + or * regular expression operators to capture more spaces in one match if you also have that case
"(-->)*[ ]*"
如果您知道字符串的
aaa
bbb
等格式也是固定的,那么您可以创建一个更大的表达式,以便一次性捕获所有内容

第一个表达式中的括号和空格周围的方括号是供您更好地查看表达式结构的选项。

使用替换(正则表达式中的管道字符
|
是逻辑“or”):

或者,由于您不需要正则表达式来查找搜索词:

str = str.replace(" ", "").replace("-->", "");

这可能更容易理解。

您可能不需要正则表达式,搜索字符串的replace()方法的信息我没有说,但我真正做的是在字符串的拆分方法中使用正则表达式:汉克斯先生,我不能投票给你,因为我是网络新手。但是谢谢你的帮助:)
str = str.replace(" ", "").replace("-->", "");