假设我有大量(随机)文字。在此文本中有一个电话号码,包括三个数字,一个短划线,另外三个数字,一个短划线和四个数字。例如,XXX-XXX-XXXX。从文本中检索此数字的正则表达式是什么?我尝试使用:
Matcher matcher = pattern.matcher(previousText);
Pattern pattern2 = Pattern.compile(".*(\\d\\d\\d-\\d\\d\\d-\\d\\d\\d\\d).*")
Matcher matcher2 = pattern2.matcher(currentText);
现在,虽然它会起作用,但事实并非如此。请帮忙。
答案 0 :(得分:5)
正则表达式:\d{3}-\d{3}-\d{4}
答案 1 :(得分:1)
Pattern pattern = Pattern.compile(".*(\\d{3}-\\d{3}-\\d{4}).*");
Matcher matcher = pattern.matcher(text);
if (matcher.find()) {
String number = matcher.group(1);
System.out.println(number);
}