java如何能截取正则中的字符串,请看内容
比方说我有字符串数组分别是test123wqyeaasdasd,asdtesxxxt123qwdawqe,ajsdtsa123asda,asdateshwt12312aq...
比方说我有字符串数组分别是test123wqyeaasdasd,asdtesxxxt123qwdawqe,ajsdtsa123asda,asdateshwt12312aqwe
正则是te*t123[截取]a,
如何能将第一个的wqye,第二个的qwd,第三个没有匹配不截取,第四个12
这样截取下来啊 展开
正则是te*t123[截取]a,
如何能将第一个的wqye,第二个的qwd,第三个没有匹配不截取,第四个12
这样截取下来啊 展开
展开全部
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MatcherDemo {
public static void main(String[] args) {
String[] strings = new String[] {
"test123wqyeaasdasd",
"asdtesxxxt123qwdawqe",
"ajsdtsa123asda",
"asdateshwt12312aqwe" };
Pattern pattern = Pattern.compile("te.*?t123(.*?)a");
for (String string : strings) {
Matcher matcher = pattern.matcher(string);
if (matcher.find()) {
System.out.println(string + " 匹配成功 " + matcher.group(1));
} else {
System.out.println(string + " 匹配失败");
}
}
}
}
输出:
test123wqyeaasdasd 匹配成功 wqye
asdtesxxxt123qwdawqe 匹配成功 qwd
ajsdtsa123asda 匹配失败
asdateshwt12312aqwe 匹配成功 12
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询