正则表达式匹配任意字符的写法

原来正则表达式中的".“代表的是除换行以外的任意字符,如果要真正代表任意字符,需要把换行符也加进去,但是经过测试”[.\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());
    }
}

你可能感兴趣的:(java基础)