我有一个这样的地址:7 CITE VANEAU - 75007 PARIS。我的目标是获取邮政编码。邮政编码可以针对每个地址进行更改,但总长度为6位。我想在字符串中找到邮政编码开头的位置。你有什么想法吗?
答案 0 :(得分:2)
http://jsfiddle.net/jeffreyTang/8038whkt/
var re = /[0-9]{6}/;
var str = '7 CITE VANEAU - 750007 PARIS';
// get the index of the dash
var dash = str.indexOf('-');
// remove everything before the dash
str = str.substring(dash);
// execute the pattern match
var m = re.exec(str);
// this is your answer
console.log(m[0]);
答案 1 :(得分:1)
只需使用String.search
。
>> "7 CITE VANEAU - 750071 PARIS".search(/\d{6}/);
<< 16
请参阅https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/search。
答案 2 :(得分:0)
首先找到邮政编码:
var arr = address.match(/(\d+)/g) ;
var zip ;
for (var i = 0 ;i < arr.length; i ++) {
if (arr[i].length ==6) zip = arr[i];
}
var pos = address.indexOf(zip)
这段代码可以简化。