我有一个包含字母数字字符的字符串 - 这是产品的序列号。 我需要一种方法来拉出该字符串中的前四个连续数字,这些数字代表YYMM中产品的制造日期。
示例字符串:USA43XY121100004。 1211是我需要的。
由于
答案 0 :(得分:5)
您可以使用正则表达式并找到第一组4位数字:
Pattern p = Pattern.compile("([0-9]{4})");
Matcher m = p.matcher("USA43XY121100004");
if (m.find()) {
System.out.println(m.group(1));
}
正如评论中所建议的那样,在正则表达式中没有组捕获的版本:
Pattern p = Pattern.compile("[0-9]{4}");
Matcher m = p.matcher("USA43XY121100004");
if (m.find()) {
System.out.println(m.group());
}