繁体   English   中英

字符串函数-replaceAll不适用于“。”

[英]String functions - replaceAll not working for “.”

我正在通过replaceAll函数。 我有以下字符串:

String str = "com.sac.src.abc.def";

我必须用/替换所有点。

str.replaceAll(".","/");   

但是我得到的是,我的字符串转换为-

///////////////////////////////////////////////////////

我不知道怎么了。

. 表示“任何字符”。 您需要对其进行转义:

"\\."

代替replaceAll,使用如下的replace方法:

str.replace(".","/");

“。” 是REGEX世界中的特殊字符,而replaceAll将regex作为方法中的第一个输入参数。 由于您尚未使用正则表达式,请使用replace方法。

. 与任何单个字符匹配特殊 字符 您必须使用\\\\.对其进行转义\\\\.

你需要造景. \\\\. . 表示任何字符。

str.replaceAll("\\.","/");   

阅读更多

由于dot(.)匹配任何字符,因此在点之前需要两个反斜杠,一个用于使斜杠转义以使其通过,而另一个则用于使点转义以使其变为文字。

String str = "com.sac.src.abc.def";
System.out.println(str.replaceAll("\\.","/"));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM