正则表达式模式匹配数字,字母块

时间:2012-05-22 04:35:53

标签: javascript jquery regex pattern-matching

我有一些像这样的字符串

aa11b2s
abc1sff3
a1b1sdd2

等.... 我需要将这些字符串更改为这些

aa 11 b 2 s
abc 1 sff 3
a 1 b 1 sdd 2

简单地说..我需要在每个(数字/字母s)块之间添加一个空格

3 个答案:

答案 0 :(得分:3)

var str = 'aa11b2s'.replace(/([a-z]+|\d+)(?!$)/gi, '$1 ');

答案 1 :(得分:2)

var str = 'aa11b2s';
console.log(str.replace(/([\d.]+)/g, ' $1 ').replace(/^ +| +$/g, ''));

答案 2 :(得分:2)

result = subject.replace(/[a-z](?=[0-9])|[0-9](?=[a-z])/ig, "$& ");

这匹配一个后跟数字的字母,或一个后面跟着一个字母的数字,而消费第二个字符。然后它用相同的字符替换第一个字符,后跟一个空格。