当前位置: 首页 > 知识库问答 >
问题:

Java匹配器类不匹配简单模式[重复]

姚正真
2023-03-14
        String test = "Calm_fit calm://listpage?pageid=fitnesstab SomeText";
        Pattern pattern = Pattern.compile("/\bcalm?:\/\/\S+/gi");
        Matcher matcher = pattern.matcher(test);
        System.out.println("Here 1");

        if (matcher.find()) {
            System.out.println("Here 2 Matched: " + matcher.group(1));
        }

我是不是漏掉了什么?提前感谢!

共有1个答案

长孙燕七
2023-03-14

总结一下:

  • Java正则表达式定义为字符串,而不是regex文本。这意味着
    • 不需要使用正斜杠分隔表达式。
    • 需要转义反斜杠。
    • 字面正斜杠不需要转义。

    把它放在一起:

    import java.util.regex.*;
    
    public class MyClass {
        public static void main(String args[]) {
            String test = "Calm_fit calm://listpage?pageid=fitnesstab SomeText";
            Pattern pattern = Pattern.compile("\\bcalm?://\\S+",
                    Pattern.CASE_INSENSITIVE);
            Matcher matcher = pattern.matcher(test);
    
            if (matcher.find()) {
                System.out.println(matcher.group(0));
            }
        }
    }
    
    calm://listpage?pageid=fitnesstab
    

 类似资料:
  • 这是一个示例文本:。我无法修改输入文本,我正在从文件中读取长字符串文本。 我想提取以下内容:,,, 为此,我编写了以下正则表达式模式: 我正在使用和类,但是我的Matcher无法使用前面提到的正则表达式找到模式。我在一些在线regex网站上用文本测试了这个regex,令人惊讶的是,它在那里工作。 我哪里做错了? 原始代码: 输出:未打印任何内容

  • 本文向大家介绍java模式匹配之蛮力匹配,包括了java模式匹配之蛮力匹配的使用技巧和注意事项,需要的朋友参考一下 java模式匹配之蛮力匹配 使用示例: 以上所述就是本文的全部内容了,希望大家能够喜欢。

  • 我想知道为什么这个regex组在Java中不适合我?它在寻找组匹配时抛出异常。我正试着把用破折号隔开的数字匹配起来。

  • 我在angular 5中实现了一个模式,在.ts文件中使用以下代码进行密码验证。这样做的目的是支持至少八个字符,至少一个大写字母、一个小写字母、一位数字和一个特殊字符。请参阅:密码的Regex必须包含至少八个字符、至少一个数字以及大小写字母和特殊字符 我明白了,当我在密码文本框中输入一个字符串时,例如< code>Niladri1!然而,当我输入一个类似于< code>Nopasss123!!,它

  • 或者更好的方法是遍历它,为参数的每个索引获取TRUE或FALSE标志 我只知道如何使用matcher.find()进行循环,如果有任何帮助,我将不胜感激