Java 正则 中的 static Pattern compil

首页 / 正则入门教程 / Java 正则 中的 static Pattern compil

java.util.regex.Pattern.compile(String regex,int flags)方法将给定的正则表达式编译为一个模式。

static Pattern compile - 声明

以下是 java.util.regex.Pattern.compile(String regex,int flags)方法的声明。

链接:https://www.learnfk.comhttps://www.learnfk.com/javaregex/javaregex-pattern-compile1.html

来源:LearnFk无涯教程网

public static Pattern compile(String regex, int flags)
  • regex     - 要编译的表达式。

  • flags      - 匹配标志,它是一个位掩码,可能包括CASE_INSENSITIVE,MULTILINE,DOTALL,UNICODE_CASE,CANON_EQ,UNIX_LINES,LITERAL,UNICODE_CHARACTER_CLASS和COMMENTS。

static Pattern compile - 异常

  • IllegalArgumentException   - 如果在标志中设置了与定义的匹配标志相对应的位以外的位。

  • PatternSyntaxException       - 如果表达式的语法无效。

static Pattern compile - 示例

下面的示例演示java.util.regex.Pattern.compile(String regex,int flags)方法的用法。

package com.learnfk;

import java.util.regex.MatchResult;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class PatternDemo {
   private static final String REGEX = "(.*)(\\d+)(.*)?# 3 capturing groups";
   private static final String INPUT = "This is a sample Text, 1234, with numbers in between.";

   public static void main(String[] args) {
      //创建一个模式
      Pattern pattern = Pattern.compile(REGEX,Pattern.COMMENTS);
      
      //获取匹配器对象
      Matcher matcher = pattern.matcher(INPUT); 

      if(matcher.find()) {
         //获取 MatchResult 对象
         MatchResult result = matcher.toMatchResult();

         //在匹配的最后一个字符之后打印偏移量。
         System.out.println("First Capturing Group - Match String end(): "+result.end());         
      }
   }
}

让无涯教程编译并运行以上程序,这将产生以下输出-

无涯教程网

First Capturing Group - Match String end(): 53

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

深入拆解Java虚拟机 -〔郑雨迪〕

邱岳的产品实战 -〔邱岳〕

玩转webpack -〔程柳锋〕

Flutter核心技术与实战 -〔陈航〕

性能测试实战30讲 -〔高楼〕

分布式协议与算法实战 -〔韩健〕

正则表达式入门课 -〔涂伟忠〕

Spark性能调优实战 -〔吴磊〕

深入C语言和程序运行原理 -〔于航〕

好记忆不如烂笔头。留下您的足迹吧 :)