zoukankan      html  css  js  c++  java
  • Java学习笔记正则表达式的模式匹配

    正则表达式(Regex)为被匹配的文本模式提供了简明扼要的规范。

    关于正则表达式的语法,可以参考相关书籍和这个网址:http://edu.yesky.com/edupxpt/18/2143018.shtml

    这里主要介绍Java的正则表达式包的使用:(这里遵循Java的命名规范,开头字母大写表示类名,小写表示变量)

    1、基本匹配方法:inputString.matches(stringRegexPattern)

    2、使用RE类的简单例子:

          RE r=new RE(pattern);  //patttern是正则表达式字符串

          boolean found=r.match(input);  //input是输入的字符串

    3、Java 的regex包由两个类组成:Pattern和Matcher

        详细的类和使用方法可以参考Java API

    在这里我总结一下今天做项目练习用到的方法,这些应该都是比较常用的.

    Pattern:

    Pattern.compile(String regex)  可以产生一个以给定正则表达式编译出的匹配模式(pattern)

    pattern.matcher(String input)  可以产生一个将给定输入和pattern匹配的匹配器

    Pattern.matches(regex,input)  将给定输入与给定正则表达式匹配,匹配则返回true

           注意:这个方法有另一种的写法

                                Pattern p=Pattern.compile(regex);

                                Matcher m=p.matcher(input);

                                m.matches();

                   当正则表达式要多次使用时,实现编译一次效率比较高

    另split()也是一种比较常用的方法,由于我暂时没有用到,这里就暂时不涉及了

    Matcher:

    一、查找匹配的文本(m是事先产生的matcher)

         m.start()   m.end()返回字符串中开始和结束字符的位置信息

         groupCount()返回用括号括起来的获取的分组数,如果没有分组则返回0

         group(int i)如果i小于等于分组数,则返回对应编号的分组字符串。group()或group(0)返回匹配的整个字符串

           注:正则表达式处理时,圆括号中的内容最先处理。正则表达式可能出现比较复杂的多层嵌套,调用这个方法可以获得指定嵌套层所匹配的内容,

                 如果没有使用圆括号,则视为零层。

    二、替换匹配的正文

    三、打印匹配的所有字符串

    四、打印含有模式的行

    五、在正则表达式中控制大小写

    六、匹配时的换行问题

    上面的暂时没有用到,等用到了解之后再补充

  • 相关阅读:
    CSS3 --- 盒子
    CSS3 --- 伪元素
    CSS3 --- 伪类结构
    CSS3 --- 选择器
    HTML5 --- 新增表单属性
    HTML5 --- 新增标签
    CSS --- 定位
    CSS---浮动造成的影响
    CSS---盒子模型
    CSS---样式属性
  • 原文地址:https://www.cnblogs.com/ITEagle/p/1664856.html
Copyright © 2011-2022 走看看