如何在 Java 中替换字符串中的点 (.)

发布于 2024-12-04 07:20:18 字数 287 浏览 1 评论 0原文

我有一个名为 persons.name 的字符串,

我想用 /*/ 替换 DOT .,即我的输出将是 persons/ */name

我尝试了这段代码:

String a="\\*\\";
str=xpath.replaceAll("\\.", a);

我收到 StringIndexOutOfBoundsException。

如何替换点?

I have a String called persons.name

I want to replace the DOT . with /*/ i.e my output will be persons/*/name

I tried this code:

String a="\\*\\";
str=xpath.replaceAll("\\.", a);

I am getting StringIndexOutOfBoundsException.

How do I replace the dot?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

眼泪也成诗 2024-12-11 07:20:18

在点之前需要两个反斜杠,一个用于转义斜杠,以便它通过,另一个用于转义点,以便它变成字面意思。正斜杠和星号按字面意思处理。

str=xpath.replaceAll("\\.", "/*/");          //replaces a literal . with /*/

http: //docs.oracle.com/javase/7/docs/api/java/lang/String.html#replaceAll(java.lang.String,%20java.lang.String)

You need two backslashes before the dot, one to escape the slash so it gets through, and the other to escape the dot so it becomes literal. Forward slashes and asterisk are treated literal.

str=xpath.replaceAll("\\.", "/*/");          //replaces a literal . with /*/

http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#replaceAll(java.lang.String,%20java.lang.String)

你在看孤独的风景 2024-12-11 07:20:18

如果你想替换一个简单的字符串并且不需要正则表达式的能力,你可以使用 替换,而不是replaceAll

replace 替换每个匹配的子字符串,但不将其参数解释为正则表达式。

str = xpath.replace(".", "/*/");

If you want to replace a simple string and you don't need the abilities of regular expressions, you can just use replace, not replaceAll.

replace replaces each matching substring but does not interpret its argument as a regular expression.

str = xpath.replace(".", "/*/");
孤千羽 2024-12-11 07:20:18

使用 Apache Commons Lang

String a= "\\*\\";
str = StringUtils.replace(xpath, ".", a);

或使用独立的 JDK:

String a = "\\*\\"; // or: String a = "/*/";
String replacement = Matcher.quoteReplacement(a);
String searchString = Pattern.quote(".");
String str = xpath.replaceAll(searchString, replacement);

Use Apache Commons Lang:

String a= "\\*\\";
str = StringUtils.replace(xpath, ".", a);

or with standalone JDK:

String a = "\\*\\"; // or: String a = "/*/";
String replacement = Matcher.quoteReplacement(a);
String searchString = Pattern.quote(".");
String str = xpath.replaceAll(searchString, replacement);
睡美人的小仙女 2024-12-11 07:20:18

return Sentence.replaceAll("\s",".");

return sentence.replaceAll("\s",".");

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文