正则表达式截取指定字符串内容

获取某个字符串中某一部分的字符内容,通常大家会首先想到使用String.substring方法,但String.substring方法对于某些包含特殊字符和HTML标签的处理不是很完善。例如如下字符串,想要获取sign中的字符,用String.subString方法虽然也能拿到sign中的内容,但有缺陷....

String str="

";

String.substring截取:

int s=str.indexOf("sign=");
        int t=str.indexOf("&sign_type");
        String sign= str.substring(s+5,t-1);
        System.out.println("sign==="+sign);


正则表达式截取:

Pattern p = Pattern.compile("sign\\=\"(.*?)\"");//正则表达式
        Matcher m = p.matcher(str);
        while(m.find()) {
            System.out.println(m.group(1));//m.group(1)不包括这两个字符

        }

m.group()获取的是包含sign=在内的全部内容

你可能感兴趣的:(正则表达式,字符截取)