从字符串末尾获取所有换行符的正则表达式是什么
What is the Regular Expression to get all the newline characters from the end of the string
我已经尝试使用 [\s]+$
和 (?:$|\s)+$
但我没有得到想要的输出。
我要找的是
String str ="this is a string ending with multiple newlines\n\n\n"
新行可以是:\n
或 \r
或 \r\n
取决于 OS 所以我们在这里使用 \s+
。
我需要从字符串末尾找到所有换行符
我必须在 Java 代码
中使用它
要点是 \s
在 Java 中默认匹配任何 non-Unicode 空格(如果使用 (?U)\s
它匹配任何 Unicode 空格)。
您可以使用
String regex = "\R+$";
String regex = "\R+\z";
参见regex demo。
如果需要在字符串末尾获取每个单独的换行符序列,可以使用
String regex = "\R(?=\R*$)";
这些模式意味着
\R+
- 一个或多个换行序列
$
- 在字符串的末尾(\z
匹配字符串的末尾,在这种情况下效果相同)
\R(?=\R*$)
- 任何换行符序列后跟零个或多个换行符序列直到整个字符串的末尾。
我已经尝试使用 [\s]+$
和 (?:$|\s)+$
但我没有得到想要的输出。
我要找的是
String str ="this is a string ending with multiple newlines\n\n\n"
新行可以是:\n
或 \r
或 \r\n
取决于 OS 所以我们在这里使用 \s+
。
我需要从字符串末尾找到所有换行符 我必须在 Java 代码
中使用它要点是 \s
在 Java 中默认匹配任何 non-Unicode 空格(如果使用 (?U)\s
它匹配任何 Unicode 空格)。
您可以使用
String regex = "\R+$";
String regex = "\R+\z";
参见regex demo。
如果需要在字符串末尾获取每个单独的换行符序列,可以使用
String regex = "\R(?=\R*$)";
这些模式意味着
\R+
- 一个或多个换行序列$
- 在字符串的末尾(\z
匹配字符串的末尾,在这种情况下效果相同)\R(?=\R*$)
- 任何换行符序列后跟零个或多个换行符序列直到整个字符串的末尾。