java - 正则表达式 - 链接不允许双问号 Java

标签 java regex

我有以下深层链接,如果字符串有 2 个或更多问号,并且理想情况下应始终包含一个问号,则正则表达式应该失败

这是我正在使用的正则表达式:"^(?!.*[?][?].*)+$"

TestMe?src=SRCH&reset=true - regex should pass
TestMe?src=SRCH?reset=true - regex should fail

最佳答案

您正在寻找 2 个相邻的 ?:

"^(?!.[?][?].)+$"
       ^  ^

你的“失败”字符串没有:

TestMe?src=SRCH?reset=true
      ^--------^

您不需要使用正则表达式来检查两个问号:

boolean containsTwoQuestionMarks(String str) {
  return str.indexOf('?') != str.lastIndexOf('?');
}

关于java - 正则表达式 - 链接不允许双问号 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40877765/

相关文章:

java - 当我在 java 中使用 connection.setAutoCommit(false) 时,对 MySQL 设置了什么样的锁定?

java - 我如何开始优化我的程序

c# - 如何使用正则表达式和 C# 提取特定的 URL 段

javascript - JSON不添加最后一个逗号

带有 JSON 数组的 MYSQL REGEXP

java - 作为客户端使用 Java 类发送 JSON 对象

java - 如何通过Index同步删除List中的元素?

java - 用冒号分隔小数点

html - 用空 anchor 匹配所有链接?

javascript - RegEx 从 JavaScript 中的 url 哈希中提取参数