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

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

技术教程推荐

趣谈网络协议 -〔刘超〕

快速上手Kotlin开发 -〔张涛〕

算法面试通关40讲 -〔覃超〕

软件工程之美 -〔宝玉〕

Web协议详解与抓包实战 -〔陶辉〕

TypeScript开发实战 -〔梁宵〕

即时消息技术剖析与实战 -〔袁武林〕

苏杰的产品创新课 -〔苏杰〕

结构思考力 · 透过结构看问题解决 -〔李忠秋〕

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