我有一个像这样的字符串:
String orginal = "this is for test hello\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n" +
"\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nhello" +
"\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nhello";
Run Code Online (Sandbox Code Playgroud)
用户在文本区域输入内容时按"输入"很多时间,因此在java中,它会变为很多'\ r \n'.我想将其更改为:
String newStr = "this is for test hello\r\nhello\r\nhello"
Run Code Online (Sandbox Code Playgroud)
我怎么能只保留一个 \r\n
这应该做到......
String newStr = original.replaceAll("(\r\n)+", "\r\n");
Run Code Online (Sandbox Code Playgroud)
您可能还需要考虑使用line.separator系统属性而不是硬编码\r\n,因为在其他平台上可能会有所不同.例如,Unix只使用一个换行符\n.这样会更便携......
final String NEWLINE = System.getProperty("line.separator");
String newStr = original.replaceAll("(" + NEWLINE + ")+", NEWLINE);
Run Code Online (Sandbox Code Playgroud)