如何使用Android正则表达式用Pattern和Matcher类? [英] How to use Android REGEX with Pattern and Matcher Classes?

查看:207
本文介绍了如何使用Android正则表达式用Pattern和Matcher类?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下的code:

String example = "<!--§FILES_SECTION§\n" +
                "Example line one\n" +
                "Example line two\n" +
                "§FILES_SECTION§-->";

        String myPattern = ".*?FILES_SECTION.*?\n(.*?)\n.*?FILES_SECTION.*?";
        Pattern p = Pattern.compile(myPattern);
        Matcher m = p.matcher(example);

        if ( m.matches() )
            Log.d("Matcher", "PATTERN MATCHES!");
        else
            Log.d("MATCHER", "PATTERN DOES NOT MATCH!");

为什么总是返回模式不匹配?

Why does it always return "PATTERN DOES NOT MATCH?"

推荐答案

默认情况下,。不匹配换行符。您将需要添加一个正则表达式选项,以便它:

By default, the . does not match line breaks. You would need to add a regex option so that it does:

Pattern p = Pattern.compile(myPattern,Pattern.DOTALL);

这篇关于如何使用Android正则表达式用Pattern和Matcher类?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆