我正在尝试使用PRXCHANGE从字符串中的任何位置提取可能的邮政编码。
PRXCHANGE ( "s/^.*([A-Z][A-Z]?[0-9][0-9A-Z]?\s?[0-9][A-Z][A-Z]).*$/$1/" , -1 , a.address )
正则表达式正确识别邮政编码,但替换总是删除邮政编码的第一个字母,使AZ12 3ZA成为Z12 3ZA。
我尝试尝试前两个值的几种变体,例如[A-Z] {1,2},但总是有同样的问题。
我在邮政编码正则表达式的开头和结尾添加了空格,如下所示;
PRXCHANGE ( "s/^.*( [A-Z][A-Z]?[0-9][0-9A-Z]?\s?[0-9][A-Z][A-Z] ).*$/$1/" , -1 , a.address )
这似乎可以解决问题并正确返回可能的邮政编码。我不明白为什么开放式支架后的空间有效。任何人都可以解释为什么第一个不起作用,但第二个不起作用?
由于