java - 在Java中使用正则表达式匹配子域和顶级域

标签 java regex

跟进这个问题 Regex to match pattern with subdomain in java

我使用以下模式来匹配域和子域

  Pattern pattern = Pattern.compile("http://([a-z0-9]*.)example.com");

此模式与以下内容匹配

  • http://asd.example.com
  • http://example.example.com
  • http://www.example.com

但不匹配

  • http://example.com

谁能告诉我如何匹配 http://example.com 吗?

最佳答案

只需使用 ? 将第一部分设为可选:

Pattern pattern = Pattern.compile("http://([a-z0-9]*\\.)?example\\.com");

请注意,. 匹配任何字符,您应该使用 \\. 来匹配文字点。

关于java - 在Java中使用正则表达式匹配子域和顶级域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12402111/

相关文章:

正则表达式排除数字的两个字符内的数字

Java Unix 设置属性

regex - Scala 正则表达式中的可选分组

python - 用于匹配导出为任务纸格式的 Omnifocus 项目的正则表达式

java - Thread类的方法与Thread.currentThread()所使用的方法之间的区别?

c# - 使用正则表达式查找字符串

javascript - 从具有特定元素的动态字符串创建数组

java - 计时器类通过 JFrame 移动 JLabel!为什么 JLabel 文本不能可变?

java - 如何将变量的数据与数组中的数据进行比较?

java - 构造函数 JSONObject(String) 是未定义错误 - 无法解析