在Dart中从字符串提取5位邮政编码及包含该编码的后续完整串
Dart提取包含5位邮政编码的后续字符串
需求实现代码
直接通过正则表达式匹配并提取目标内容:
void main() { final address = '17 Frog Road, 62000 New York'; // 匹配逗号空格后,以5位数字开头的后续全部内容 final regex = RegExp(r', (\d{5}.*)'); final matchResult = regex.firstMatch(address); if (matchResult != null) { final extractedString = matchResult.group(1); print(extractedString); // 输出结果: 62000 New York } else { print("未检测到符合格式的邮政编码及后续内容"); } }
正则说明
,:精准匹配地址里分隔前后内容的逗号加空格(\d{5}.*):捕获目标内容的分组,其中\d{5}匹配5位数字的邮政编码,.*匹配邮编之后的所有字符(直到字符串结尾)
单独提取邮政编码
如果需要单独获取5位邮编,可使用以下代码:
void main() { final address = '17 Frog Road, 62000 New York'; final zipRegex = RegExp(r'\d{5}'); final zipCode = zipRegex.stringMatch(address); print(zipCode); // 输出结果: 62000 }
内容的提问来源于stack exchange,提问作者Sunshine
相关产品推荐
相关产品推荐

