java - 正则表达式帮助在字符串中搜索匹配项

标签 java regex

我需要做的是检查一个字符串,这是我目前所做的

System.out.print("Please enter a string of 1's and 0s :");
numLine = input.next();

if (numLine.matches("^101$")) {
    System.out.print("A is true");
} else if (numLine.matches("^\\d[01]+101$ ")){
    System.out.print("B is true");
} else {
    System.out.println("no");  
}

代码的第一部分 ^101$ 工作并打印出 A is true 对于 B,我想做的是只接受 1 和 0,如果以 101 结尾则返回 我希望 C 在开始时执行 101 并接受尽可能多的 1 和 0 和一个在其中任何地方都做 101 的 D,即使它是 111000101000 或其他东西

我的 killer 锏是 ("^101$") 语法,我可以寻求帮助

最佳答案

您不需要 ^$matches(正如我在评论中所说)。这是我的看法:

B: [01]+101"
C: "101[01]+"
D: [01]*101[01]*"


回想一下,X+ 表示 X 一次或多次X* 表示 X 零次或多次

此外(对于 A),如果您只想“匹配”"101",您可能需要考虑简单地使用 equals相反,即 numLine.equals("101")

关于java - 正则表达式帮助在字符串中搜索匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13735996/

相关文章:

使用正则表达式解析 Java 字符串

regex - 如果模式在中间 linux 中,则在两个字符串之间进行 grep

java - protected 方法与 protected 属性

java - Android:随机播放变量和多个 setText

Java字符串替换(去掉换行符,将$改为\$)

JavaScript 获取字符串中的 img src

c# - 如何将字符串转换为点?

java - 是否可以简化@JsonSerialize 注释?

java - 在 Google 工作表中插入日期并在单元格中附加 '

java - jstat:OGC & OC、PGC & PC 的区别