java - 正则表达式将模式与java中的子域匹配

标签 java regex

我正在尝试匹配子域和域。 我使用了这段代码。

public static void main(String[] args) {
        String s = "http://aaa.example.com";
        Pattern pattern = Pattern.compile("http://([a-z0-9]*.)example.com");
        Matcher matcher = pattern.matcher(s);
        if (matcher.find()) {
            System.out.println("match");
        }

    }

这适用于 http://aaa.example.comhttp://aaa.example.commm。只需要匹配 example.com 的子域 更新 : 感谢您的回答,它现在可以工作了我正面临另一个问题,这个正则表达式不匹配 http://example.com

最佳答案

使用 matcher.matches() 而不是 find()。匹配会将整个区域与模式匹配。

关于java - 正则表达式将模式与java中的子域匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12393918/

相关文章:

java - 为什么 Java 枚举文字不能具有泛型类型参数?

java - Spring Security 更改重定向 URL 以使用 HTTPS 而不是 HTTP

java - 将ant脚本迁移到Maven3

Mysql Regexp 搜索包含特定单词的记录

Javascript Lookbehind 与全局搜索重叠

php - MySQL 中的正则表达式错误(相同的正则表达式在 PHP 中也有效)

java - 在 Android api lvl 19 之前删除 JsonObeject

java - mongodb log4j2 身份验证失败

javascript - 使用正则表达式反转文本

regex - 使用正则表达式的 Sed 替换输出