【问题标题】:Removing leading NewLine chars from String by regex?通过正则表达式从字符串中删除前导 NewLine 字符?
【发布时间】:2014-06-28 15:27:13
【问题描述】:

我是“正则表达式”的新手。这个问题是对 java 中正则表达式的培训和教育。

我尝试从字符串中删除前导换行符。(我知道我们可以通过 'trim()' 来做到这一点,但我不想使用它)。我使用 '^[\r\n]+'作为正则表达式,像这样:

str = "\r\n\r\ntest";
str.replaceAll("^[\r\n]+", "");
System.out.print(str);

我猜结果会是

测试

但结果是:

CRLF
CRLF
test

如您所见,前导新行字符不会被删除。我也尝试将 '^\s' 或 '^\s+' 作为正则表达式,但结果相同。你知道为什么这些正则表达式与前导新行不匹配吗字符?

【问题讨论】:

标签: java regex string newline


【解决方案1】:

无法修改字符串:replaceAll 返回更改后的字符串。

str = str.replaceAll(...);

【讨论】:

    猜你喜欢
    • 2023-03-25
    • 2021-09-07
    • 1970-01-01
    • 2016-05-31
    • 2021-01-17
    • 2014-06-20
    • 1970-01-01
    • 1970-01-01
    • 2022-06-28
    相关资源
    最近更新 更多