从一个字符串中提取满足指定正则表达式的字符串,如下代码:
public static void main(String[] args) {
// 内容
String value = "fileNameCode-->_AD2467524284sd234.json";
// 匹配规则
String reg = "_(.*?)\\.";
Pattern pattern = Pattern.compile(reg);
// 内容 与 匹配规则 的测试
Matcher matcher = pattern.matcher(value);
if( matcher.find() ){
// 包含前后的两个字符
System.out.println(matcher.group());
// 不包含前后的两个字符
System.out.println( matcher.group(1) );
}else{
System.out.println(" 没有匹配到内容....");
}
}
注意:这个 . 需要:\\. 这样。
() --> 标记 一个子表达式 开始 和 结束 的位置。
. --> 匹配除换行符 \n 之外的任何单字符。
* --> 匹配前面的子表达式零次或者多次。
? --> 匹配前端的子表达式零次或者一次。
网友评论