当前位置: 首页 > 知识库问答 >
问题:

我如何在Java中用\n替换空格?

喻选
2023-03-14
<?xml version="1.0" encoding="ISO-8859-1"?>  <entity>  <id>8624</id>  <name>Test_Report.csv</name>  <startDate>24/05/2021 9:15 am</startDate>  <level>info</level>  </entity>
message = messsage.replaceAll("\\s+","\\n")
<?xml version="1.0"\nencoding="ISO-8859-1"?>\n<entity>\n<id>8624</id>\n  <name>Test_Report.csv</name>\n<startDate>24/05/2021\n9:15 am</startDate>\n<level>info</level>\n </entity>

我希望输出保持xml元素数据中的空格不变,如下所示:

<?xml version="1.0" encoding="ISO-8859-1"?>
<entity>
<id>8624</id>
<name>Test_Report.csv</name>
<startDate>24/05/2021 9:15 am</startDate>
<level>info</level>
</entity>

共有1个答案

易雅畅
2023-03-14

正确的regex应该只匹配<字符之间的空格,因此它看起来像下面的\>\s*?\<(当<XML标记之间没有空格时也可以使用)。

替换字符串将为>\n<

请注意,String.ReplaceAll的第二个参数是纯字符串,而不是正则表达式,因此您不需要用反斜杠\转义它。

message.replaceAll("\\>\s*?\\<", ">\n<");
message.replaceAll("\\>(\\s*?)\\<", ">\n$1<")
 类似资料:
  • 问题内容: 例如: 我希望输出是 问题答案: 使用。 用空格替换它们(根据您的问题标题): 上面也可以用字符来完成: 删除它们(按照您的示例):

  • 问题内容: 如何在Java中用空字符串替换单引号’。我尝试了以下操作,但似乎没有用。 提前致谢。非常感谢您的帮助。(输出应为:Sids den) 谢谢你们的回应。我想我应该对我的问题更加清楚。基本上,我从表中获得特殊字符,并且从同一个表中我们必须用什么值替换那些特殊字符。这是代码片段: 因此,当数据中的evrf有特殊字符’时,我将面临nullpointer异常。请建议如何进行此操作? 问题答案:

  • 问题内容: 对于几种语言,已经多次询问了此信息,但我无法使其正常工作。我有这样的字符串 而且我想,以取代与使用 但不会被替换。我试图使用此RegEx工具进行验证,但看到的结果相同。输入的字符串不匹配。我究竟做错了什么 ? 问题答案: 这个对我有用。 结果: 您的问题在其他地方。

  • 问题内容: 我试图将字符串分成数组并替换为,但无法做到,我也尝试了String.replaceAll这样的东西。 我想提供一个通往JNI的路径,并且它只能以这种方式读取。 问题答案: 在这种情况下不要使用- 这是用正则表达式指定的,这意味着您需要更多的转义。这应该很好: 请注意,由于Java字符串文字中的原因,反斜杠加倍-因此此处涉及的 实际 字符串是“单反斜杠”和“双反斜杠”-而不是双倍和四倍。

  • 问题内容: 尝试简单地替换一些新行。尝试了3种不同的方法,但我没有任何改变: 这些都应该起作用,但是我仍然可以换行。它们是双精度的:“ \ r \ r”。那不应该让这些失败吗? 问题答案: 已经有在换行符之前 替换 插入* 标签的[]功能: ~~~~* 示例(键盘): 但是,如果仍然无法正常工作,请确保文本被双引号引起来。 那是因为单引号不会“扩展”转义序列,例如与双引号字符串相比。引用PHP文档

  • 本文向大家介绍Java 替换空格,包括了Java 替换空格的使用技巧和注意事项,需要的朋友参考一下 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 以下是java.lang.StringBuilder.replace()方法的声明 public StringBuilder replace(i