原来正则表达式中的".“代表的是除换行以外的任意字符,如果要真正代表任意字符,需要把换行符也加进去,但是经过测试”[.\n]“不生效,可以使用”\s\S"代表,即所有空字符+所有非空字符。
注:为了适用于java程序,上述表达式已把斜杠替换成双斜杠。
package com.hgh.springcloud.feign;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class TestYYQAndZFS {
public static String Str = "营业";
public static void main(String[] args) {
Pattern pattern = Pattern.compile("[营][业][区]");
String name1 = "营业";
System.out.println("1:" + Pattern.matches("/*[营][业]/*",name1));
String name2 = "11营业区";
Matcher m = pattern.matcher(name2);
System.out.println(m.find());
//可行
Pattern pattern2 = Pattern.compile(".*营业.*区.*");
String name3 = "营业4354343fsdfsd区2233";
Matcher m2 = pattern2.matcher(name3);
System.out.println(m2.find());
Pattern pattern4 = Pattern.compile("([\\s\\S]*)营业([\\s\\S]*)区([\\s\\S]*)");
String name4 = "123123营业4354343fsdfsd区2233";
Matcher m4 = pattern4.matcher(name3);
System.out.println(m4.find());
}
}