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

java正则表达式在地址中提取pincode,java,regex,Java,Regex,我有一个地址,末尾包含pincode 如何使用正则表达式从地址中提取6位pincode 我尝试使用String.index(),但它并不完美。我不知道如何编写reg exp语法来从整个字符串中提取6位字符串 输入: 孟买,马哈拉施特拉邦,孟买,Powai,MHADA殖民地19号,Jogeshwari Vikhroli Link路19号,邮编400076 输出: 400076 请注意,您必须将斜杠转义为d/b \d-一个数字 {6}-6次重复 \b-a,用于限制匹配的边界。否则,7位数字的序列仍

我有一个地址,末尾包含pincode

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

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

输入:

孟买,马哈拉施特拉邦,孟买,Powai,MHADA殖民地19号,Jogeshwari Vikhroli Link路19号,邮编400076

输出:

400076

请注意,您必须将斜杠转义为
d
/
b

  • \d
    -一个数字
  • {6}
    -6次重复
  • \b
    -a,用于限制匹配的边界。否则,7位数字的序列仍将匹配(因为其中包含6位数字)
请注意,您必须将斜杠转义为
d
/
b

  • \d
    -一个数字
  • {6}
    -6次重复
  • \b
    -a,用于限制匹配的边界。否则,7位数字的序列仍将匹配(因为其中包含6位数字)

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

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);
}

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

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);
}

你不必把火柴放在一个小组里。您只需引用
group()
(与
group(0)
或整个匹配项相同)。您不必将匹配项包含在一个组中。你可以只引用<代码>组()/<代码>(与<代码>组(0)< /代码>或整个匹配相同)。考虑在其周围添加Word边界。例如,如果地址包含类似于车道号546417655的内容,请考虑在其周围添加单词边界。例如,如果地址包含类似于
车道号546417655,…