[英]String functions - replaceAll not working for “.”
我正在通过replaceAll
函数。 我有以下字符串:
String str = "com.sac.src.abc.def";
我必须用/
替换所有点。
str.replaceAll(".","/");
但是我得到的是,我的字符串转换为-
///////////////////////////////////////////////////////
我不知道怎么了。
.
表示“任何字符”。 您需要对其进行转义:
"\\."
代替replaceAll,使用如下的replace方法:
str.replace(".","/");
“。” 是REGEX世界中的特殊字符,而replaceAll将regex作为方法中的第一个输入参数。 由于您尚未使用正则表达式,请使用replace方法。
.
是与任何单个字符匹配的特殊 字符 。 您必须使用\\\\.
对其进行转义\\\\.
。
由于dot(.)
匹配任何字符,因此在点之前需要两个反斜杠,一个用于使斜杠转义以使其通过,而另一个则用于使点转义以使其变为文字。
String str = "com.sac.src.abc.def";
System.out.println(str.replaceAll("\\.","/"));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.