Tim*_*Tim 34 java regex newline
我有一个字符串,并希望简单地用字符串替换它中的所有换行符" --linebreak-- "
.
只写下来就足够了:
string = string.replaceAll("\n", " --linebreak-- ");
Run Code Online (Sandbox Code Playgroud)
我对它的正则表达式部分感到困惑.换行符需要两个斜杠吗?这够好吗?
Boh*_*ian 55
不要使用正则表达式!.您只需要一个纯文本匹配来替换"\n"
.
用于replace()
将文字字符串替换为另一个:
string = string.replace("\n", " --linebreak-- ");
Run Code Online (Sandbox Code Playgroud)
请注意,replace()
仍然会替换所有出现的情况,replaceAll()
区别在于replaceAll()
使用正则表达式进行搜索.
kan*_*arp 36
使用以下正则表达式:
s.replaceAll("\\r?\\n", " --linebreak-- ")
Run Code Online (Sandbox Code Playgroud)
UNIX和Windows操作系统只有两个换行符.
Psh*_*emo 26
由于Java 8正则表达式引擎支持\R
代表任何行分隔符(更多信息:https://stackoverflow.com/a/31060125/1393766).
因此,如果您可以访问Java 8,则可以使用
string = string.replaceAll("\\R", " --linebreak-- ");
Run Code Online (Sandbox Code Playgroud)