java正则表达式提取地址中的pincode

时间:2016-01-06 09:06:01

标签: java regex

我的地址最后包含密码。

如何使用正则表达式从地址中提取 6位密码?

我尝试使用String.index(),但这并不完美。我不知道怎么写reg exp语法从整个字符串中提取 6位字符串。

输入:

  

19,Jogeshwari Vikhroli Link Rd,MHADA Colony 19,Powai,Mumbai,Maharashtra 400076,Mumbai,

输出:

  

400076

2 个答案:

答案 0 :(得分:6)

"\\b\\d{6}\\b"

请注意,您必须转义转义d / b的斜杠。

  • \d - 数字
  • {6} - 6 重复
  • \b - word boundary,用于限制匹配的边框。否则, 7 数字序列仍然匹配(因为它包含 6 数字)

答案 1 :(得分:4)

使用模式,您可以从地址中提取密码:

Pattern zipPattern = Pattern.compile("(\\d{6})");
Matcher zipMatcher = zipPattern.matcher("19, Jogeshwari Vikhroli Link Rd, MHADA Colony 19, Powai, Mumbai, Maharashtra 400076, Mumbai,");
if (zipMatcher.find()) {
    String zip = zipMatcher.group(1);
}