JavaScript如何在第一个数字处拆分字符串?

9

我想要将英国邮政编码字符串分割,只保留初始字母部分。例如,'AA1 2BB' 将会变成 'AA'。

我考虑使用类似下面这样的方式:

var postcode = 'AA1 2BB';
var postcodePrefix = postcode.split([0-9])[0];

这实际上并不起作用,但有人可以帮我解决语法吗?
感谢任何帮助。

3
postcode.split(/[0-9]/)[0]; 可能是将邮政编码按照数字拆分,然后返回第一个拆分的结果。 - Matthew
你想让postcodePrefix[1]包含'1 2BB'还是'2BB',或者这无所谓? - user1720624
4个回答

11

你可以尝试像这样做:

var postcode = 'AA1 2BB';
var postcodePrefix =postcode.split(/[0-9]/)[0];

4

另外,您可以使用正则表达式来查找在字符串开头出现的所有字母字符:

var postcode = 'AA1 2BB';
var postcodePrefix = postcode.match(/^[a-zA-Z]+/);

如果你想要任何以非数字开头的初始字符,可以使用以下方法:

var postcodePrefix = postcode.match(/^[^0-9]+/);

1
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/split

"AA1 2BB".split(/[0-9]/)[0];

或者

"AA1 2BB".split(/\d/)[0];

点赞\d - 我不知道为什么人们使用[0-9] - Tremendus Apps

0
var m = postcode.match(/([^\d]*)/);
if (m) {
   var prefix = m[0];
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接