gpt4 book ai didi

java换行

转载 作者:搜寻专家 更新时间:2023-11-01 01:05:32 24 4
gpt4 key购买 nike

我想知道为什么我没有得到预期的结果:

String t = "1302248663033   <script language='javascript'>nvieor\ngnroeignrieogi</script>";
t.replaceAll("\n", "");
System.out.println(t);

输出是:

1302248663033   <script language='javascript'>nvieor
gnroeignrieogi</script>

所以我想知道为什么 \n 仍然存在。有人知道吗?\n 有什么特别之处吗?

编辑:

所以我在将换行符与 .在正则表达式中,没有意识到使用 DOTALL 选项,所以我将在此处添加需要做的事情以供将来引用:

String text = null;
text = FileUtils.readFileToString(inFile);
Pattern p = Pattern.compile("<script language='javascript'>.+?</script>\n", Pattern.DOTALL);
text = p.matcher(text).replaceAll("");
out.write(text);

最佳答案

字符串是不可变的。像 replaceAll 这样的字符串操作不会修改你调用它的实例,它们会返回新的 String 实例。解决方案是将修改后的字符串分配给您的原始变量。

t = t.replaceAll("\n", "");

关于java换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5658134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com