Java 正则获取两个字母之间的内容

正则匹配两个字符之间的内容

表达式: (?<=A).*?(?=B)

匹配两个字符串A与B之间的内容,不包含A和B

// 匹配规则
    String reg = "(?<=E).*?(?=U)";
    String temp = "qwErtyUio";
    Pattern pattern = Pattern.compile(reg);
    Matcher matcher = pattern.matcher(temp);
    if( matcher.find() ){
        System.out.println(matcher.group());
    }
   //打印内容 rty

表达式: A.*?(?=B)

匹配两个字符串A与B之间的内容,包含B,不包含A

// 匹配规则
        String reg = "W.*?(?=H)";
        String temp = "eWiowedjewHw";
        Pattern pattern = Pattern.compile(reg);
        Matcher matcher = pattern.matcher(temp);
        if( matcher.find() ){
            System.out.println(matcher.group());
        }
       //打印内容 iowedjewH

表达式: A.*?B

匹配两个字符串A与B之间的内容,包含A和B

// 匹配规则
        String reg = "A.*?B";
        String temp = "aAabcBc";
        Pattern pattern = Pattern.compile(reg);
        Matcher matcher = pattern.matcher(temp);
        if( matcher.find() ){
            System.out.println(matcher.group());
        }
       //打印内容 AabcB

注: “ . ”表示任意字符,“ ? ”表示匹配一次或多次,“ ?<=A ” 表示以A开头,“ ?=B ”表示以B结尾

你可能感兴趣的:(java,开发语言)