当前位置: 首页 > 知识库问答 >
问题:

RegEx换行符出现StackOverflowError

谷梁振
2023-03-14
java.lang.StackOverflowError
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Neg.match(Pattern.java:4986)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)
at java.util.regex.Pattern$Slice.match(Pattern.java:3870)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Branch.match(Pattern.java:4502)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4556)
at java.util.regex.Pattern$Loop.match(Pattern.java:4683)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$Dollar.match(Pattern.java:3621)
at java.util.regex.Pattern$Curly.match0(Pattern.java:4170)
at java.util.regex.Pattern$Curly.match(Pattern.java:4132)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4615)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4466)

共有1个答案

严正诚
2023-03-14

交替通常会导致堆栈溢出问题(参见此答案)。您可以使用以下模式而不与可选模式交替使用:

\\r?\\n

这里,\\r?匹配一个或零个CR符号,而\\n只匹配一个LF符号。

或者,使用泛型

\\R
 类似资料:
  • 问题内容: 我有一个字符串,想简单地用string替换其中的所有换行符。 只需写一下就足够了: 我对它的正则表达式部分感到困惑。我换行需要两个斜杠吗?这样够好吗? 问题答案: 不要使用正则表达式! 。您只需要纯文本匹配即可替换。 用于将文字字符串替换为另一个: 请注意,它仍然可以替换 所有 出现的内容,区别是使用正则表达式进行搜索。

  • 问题内容: 我以为可能是[。\ n] +,但这似乎不起作用? 问题答案: 点不能在字符类中使用。 请参阅选项Pattern.DOTALL。 启用dotall模式。在dotall模式下,表达式匹配任何字符,包括行终止符。默认情况下,此表达式与行终止符不匹配。也可以通过嵌入式标志表达式启用Dotall模式。(s是“单行”模式的助记符,在Perl中被称为。) 如果仅在正则表达式的一部分上需要它,则使用e

  • 我只想在文本中的两个特定字符之间替换字符的每次出现。

  • 问题内容: 我有一个要查看的列,其中包含带有换行符的字符串。我希望能够显式查看这些字符串中的和字符。有什么方法可以编写我的SQL查询,以告诉它输出带有换行符的字符串? 问题答案:

  • 问题内容: 可以说我有一串。如何编写将字符串转换为的方法?还是那里有可用的方法实现? 到目前为止我尝试过的 我正在用它来编写休眠标准。它适用于但不适用。Havent尝试了其他任何字符串。 问题答案: 您可以从0到提取子字符串形式。在此子字符串中,将所有替换为空字符串。之后,与subtring合并(从头到尾)。 就像是:

  • 问题内容: 我有以下测试(格式如下): 我正在尝试获取“测试部分:”和“我的部分”之后的文本 我用不同的RegEx模式进行了几次尝试,但结果一无所获。 如果我做: 然后,我得到正确的答复: 但是,如果我这样做 我没有结果。结果应为“我的第二 部分 ” 我也尝试过使用RegEx Multiline,但没有结果。 任何帮助,将不胜感激。 如果重要的话,我正在Python 2.7中进行编码。 如果不清楚