java – 如何使用正则表达式提取字符串的电话号码?
发布时间:2020-12-15 02:03:57 所属栏目:Java 来源:网络整理
导读:如果我有一个包含以下内容的字符串:这是1测试123-456-7890 我需要提取1234567890作为电话号码.我不想提取测试前的数字1. 如何在 java中使用正则表达式? 我知道一种方法,但我不确定它是否是最好的解决方案: String inputString = "This is 1 test 123-456-
如果我有一个包含以下内容的字符串:这是1测试123-456-7890
我需要提取1234567890作为电话号码.我不想提取测试前的数字1. 如何在 java中使用正则表达式? 我知道一种方法,但我不确定它是否是最好的解决方案: String inputString = "This is 1 test 123-456-7890"; string result = inputString.replaceAll("(d{3})-(d{3})-(d{4})",""); String phoneNumber = inputString.replace(result,""); 解决方法
以下代码将检查您提及的字符串中的电话号码并打印出来:
String str = "This is 1 test 123-456-7890"; Pattern pattern = Pattern.compile("d{3}-d{3}-d{4}"); Matcher matcher = pattern.matcher(str); if (matcher.find()) { System.out.println(matcher.group(0)); } 但是,正如其他答案所指出的那样,许多电话号码(特别是国际电话号码)与该模式不符. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |