我想检查一个字符串是否遵循使用正则表达式的特定格式。例如,用户在控制台输入:使用正则表达式在Java中检查字符串
下一个33
然后激活一个if语句,其检查,如果它的格式是“下一个(数字)(数字)”。
if ("next \\d\\d".equalsIgnoreCase(command)) {
//further code
}
我也曾尝试:
if (command.matches("next //d//d")) {
//further code
}
从我已阅读// d可以是任何数字0-9。所以我不明白为什么这不起作用。似乎我应该可以像上面那样查看一条线,但是我对Regex的经验很少。
我很抱歉为这个elemetary quesion。谢谢。
第二个应该工作,假设你解决斜线的方向(应该是'“\\”''没有“//”'),输入被实际上得到记录到'command',那输入是'next 33'(区分大小写)......第一种方法不起作用,因为'equalsIgnoreCase'是区分大小写的,但直接比较,不是正则表达式匹配......另外,考虑改变'\\ d \\ d'到'\\ d {2}',因为它可以提高可读性......最后,阅读[模式文档](https://docs.oracle.com/javase/8/docs/api/ java/util/regex/Pattern.html),它将帮助你理解正则表达式的语法和正确的用法。 – XenoRo