zoukankan      html  css  js  c++  java
  • java中的正则表达式

    需要用到Pattern、Matcher这两个类,都在java.util.regex这个包中。regex其实是regular expression的缩写。

    用Pattern指定正则表达式。Pattern的compile(String regex)静态方法生成一个Pattern实例。

    Pattern的matcher(CharSequence input)方法返回一个Matcher实例。

    例如,正则表达式是([a-zA-Z]+)_d+),字符串是sb_520AndSb_1314

    Matcher常用方法:

    boolean matches():

    boolean find():如果字符串的某个子串能匹配这个正则表达式,则返回true,否则返回false。find()的作用就相当于Iterator的hasNext()方法,用于遍历,如while(matcher.find()){},这样就会从字符串的左边开始把匹配正则的子串找出来,有几个这样的子串就能循环几次。

    matches()和find()方法区别:

    matches()只有在字符串本身匹配正则时返回true,而find()只要字符串的某个子串匹配正则就返回true。

    以下方法在遍历内部使用:

    String group():返回此次匹配的子串

    int start():返回此次匹配的子串的起始索引

    int end():返回此次匹配的子串之后一个字符的索引,注意不是子串最后一个字符的索引,是子串之后一个字符的索引

    String group(int group):返回此次匹配的子串中第N个分组对应的字符串,N从1开始。group(0)等同于group()。

    int start(int group):返回此次匹配的子串中第N个分组对应的字符串的起始索引,N从1开始。start(0)等同于start()。

    int end(int group):返回此次匹配的子串中第N个分组对应的字符串之后的一个字符的索引,N从1开始。end(0)等同于end()。

    String group(String name):

    int start(String name):

    int end(String name):

    Matcher的int groupCount()实例方法返回正则表达式中括号的数量。

  • 相关阅读:
    ruoyi管理系统建立子项目,卡住
    JSON
    各类求自然数幂和方法
    一个关于序列区间gcd的小trick
    【JZOJ6654】【2020.05.27省选模拟】数据结构
    【JZOJ6569】【GDOI2020模拟】夕张的改造 (kaisou)
    拉格朗日插值法
    【JZOJ1914】【2011集训队出题】最短路
    【JZOJ4817】【NOIP2016提高A组五校联考4】square
    【JZOJ4816】【NOIP2016提高A组五校联考4】label
  • 原文地址:https://www.cnblogs.com/koushr/p/5873415.html
Copyright © 2011-2022 走看看