【问题标题】:Replace multiple \r\n occurrences in Java替换 Java 中出现的多个 \r\n
【发布时间】:2018-12-26 19:16:02
【问题描述】:

让我们想象一下这个字符串:

嘿\r\n\r\n我是机器人\r\n我是狗\r\n\r\n

如何用Java替换它

“嘿\r\n我是机器人\r\n我是狗\r\n”?

只出现一次

\r\n ?

【问题讨论】:

  • 试试.replaceAll("(\r\n){2,}", "\r\n");

标签: java regex string replace


【解决方案1】:

一个简单的替换:

String s = "hey \r\n\r\n I am a robot \r\n I am a dog \r\n\r\n";
System.out.println("Original: " + s);
s = s.replace("\r\n\r\n", "\r\n");
System.out.println("Result: " + s);

将打印:

Original: hey 

 I am a robot 
 I am a dog 


Result: hey 
 I am a robot 
 I am a dog 

如果有超过 2 个相邻的 "\r\n"

while (s.contains("\r\n\r\n")) {
    s = s.replace("\r\n\r\n", "\r\n");
} 

【讨论】:

    【解决方案2】:

    这可以完成这项工作。

    String messy_string = "hey \r\n\r\n I am a robot \r\n I am a dog \r\n\r\n";
    String regex_pattern = "[\r\n]+";
    String replacement = "\r\n";
    
    String sanitized_str = messy_string.replaceAll(regex_pattern, replacement);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-04
      • 1970-01-01
      • 2021-06-20
      • 1970-01-01
      • 1970-01-01
      • 2015-03-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多