正则表达式 Pattern.CASE_INSENSITIVE 忽略大小写

CASE_INSENSITIVE

public static final int CASE_INSENSITIVE

    启用不区分大小写的匹配。

    默认情况下,不区分大小写的匹配假定仅匹配 US-ASCII 字符集中的字符。可以通过指定 UNICODE_CASE 标志连同此标志来启用 Unicode 感知的、不区分大小写的匹配。

    通过嵌入式标志表达式 (?i) 也可以启用不区分大小写的匹配。

    指定此标志可能对性能产生一些影响。

package com.test;

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

public class Test1 {

/**
*   @Description
*   @param
*   @throws
*/
public static void main(String[] args) {

   Pattern p = Pattern.compile("java", Pattern.CASE_INSENSITIVE);
   Matcher m = p.matcher("java Java JAVa JaVa IloveJAVA you hateJava afasdfasdf");
   StringBuffer buf = new StringBuffer();
   int i=0;
   while(m.find()) {
    i++;
    if(i%2 == 0) {
     m.appendReplacement(buf, "java");
    } else {
     m.appendReplacement(buf, "JAVA");
    }
   }
   m.appendTail(buf);//添加尾巴
   p(buf);


}

static void p(Object o){
   System.out.println(o);
}

}

运行结果:

JAVA java JAVA java IloveJAVA you hatejava afasdfasdf

你可能感兴趣的:(java,正则表达式,嵌入式)