gpt4 book ai didi

java - 当字符串中只有一个数字发生变化时需要正则表达式方面的帮助

转载 作者:行者123 更新时间:2023-11-30 09:47:14 24 4
gpt4 key购买 nike

如果某些字符串与

匹配,如何使用正则表达式检查 Java
Monday ptnumber Operating Mode

其中数字(在 pt 之后)具有具体值,例如 0,1,...99,.. - 任何整数?Mondaypt 和 Operating mode 是硬编码的,只是数字可以在字符串中改变。

最佳答案

@Mark Peters 和@Joachim Sauer 给出了很好的答案。但我想添加简短的评论。

使用\d 代替 [0-9] 和\s+ 代替空格,即 "Monday\\s+\\d+\\s+Operating Mode"。现在正则表达式不那么严格了:它允许空格数。对我来说\d 比 [0-9] 更具可读性

  1. 方法 matches 自动在正则表达式的开头添加 ^ 并在结尾添加 $。请改用 Matchermfind()

  2. 模式的编译是非常占用 CPU 资源的过程。最好在应用程序初始化期间对所有静态模式使用 Pattern.compile(),然后使用就绪模式。 String.mantches() 实际上创建模式然后运行它。

private static Pattern p = Pattern.compile("Monday\\s+\\d+\\s+Operating Mode");

//现在使用它:

p.matcher(str).find();

关于java - 当字符串中只有一个数字发生变化时需要正则表达式方面的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6776748/

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