gpt4 book ai didi

java - 这些类似的 Java 正则表达式之间有什么区别?

转载 作者:行者123 更新时间:2023-11-29 07:21:14 31 4
gpt4 key购买 nike

这三个相关的 Java 正则表达式是否只是用于执行相同操作的不同语法?

String resultString = subjectString.replaceAll("(?m)^\\d+\\.\\s*", "");
String resultString = subjectString.replace("^[0-9]+\\. *", "");
String resultString = subjectString.replaceAll('\\d+\.\\s+', '');

最佳答案

不,它们是不同的:

  • (?m)^\\d+\\.\\s* 匹配
    • 行首的一个或多个数字(注意 (?m) 中的 m 修饰符),后跟
    • 文字.,后跟
    • 零个或多个空白字符(相当于[\t\n\x0B\f\r]);
  • ^[0-9]+\\. * 匹配
    • 一个或多个数字位于字符串的开头,后跟
    • 文字.,后跟
    • 零个空格
  • \\d+\.\\s+ 匹配
    • 一个或多个数字在任何位置,后跟
    • 文字.,后跟
    • 一个或多个空白字符

除此之外,如Adrian Smith has notedreplace 不需要正则表达式,而是单个 charCharacterSequence(String 实现该接口(interface))。

关于java - 这些类似的 Java 正则表达式之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4158123/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com