1.使用字符串截取(计算开始和结束位置下标)
public static void main(String[] args){
String smsrb="证书编号为:53162021,查询码:9525,您可以访问";
String cerNo=smsrb.substring(smsrb.indexOf("证书编号为:")+6,smsrb.indexOf(",查询码:"));
String queryCode=smsrb.substring(smsrb.indexOf("查询码:")+4,smsrb.indexOf(",您可以访问"));
System.out.println("cerNo:"+cerNo);
System.out.println("queryCode:"+queryCode);
}
2.使用正则表达式
public static void main(String[] args){
String smsrb="证书编号为:53162021,查询码:9525,您可以访问";
String patternStr1 = "\\d{21}";
String patternStr2 = "查询码:\\d{4}";
Pattern pattern1 = Pattern.compile(patternStr1);
Matcher matcher1 = pattern1.matcher(smsrb);
if (matcher1.find()) {
System.out.println(matcher1.group());
}
Pattern pattern2 = Pattern.compile(patternStr2);
Matcher matcher2 = pattern2.matcher(smsrb);
if (matcher2.find()) {
System.out.println(matcher2.group().replaceAll("查询码:",""));
}
System.out.println("cerNo:"+cerNo);
System.out.println("queryCode:"+queryCode);
}