2011-05-19 157 views
2

所以我有这样的: var str = A123B234C456;将字符串分割成数字或字母字符与JavaScript

我需要把它拆分成逗号分隔块返回是这样的:

,123A,B,234℃,456

我想正则表达式将是最适合这一点,但我不断收到卡住了,基本上我试图做一个字符串替换,但你不能在第二个参数中使用正则表达式

我很想保持它的简单,干净,做这样的事情,但它不工作:

str = str.replace(/[\d]+/, ","+/[\d]+/); 

但在现实世界中,这太简单了。

有什么想法?提前致谢!

回答

6

这可能是更明智匹配的字符,然后加入他们的行列=

str = str.match(/(\d+|[^\d]+)/g).join(','); 

但是当你定义与字符串 VAR海峡=“A123B234C456”不要省略引号;

+0

哇!有时候你会陷入复杂。这工作完美! – Paul 2011-05-19 14:46:23

0

你好你可以做到这一点通过使用正则表达式 例如

var str = "A123B234C456"; 
str = str.replace(/([a-bA-B])/g, '$1,'); 

现在海峡值将是 'A,123,B234,C456' 取代;

+0

再次检查您的代码。这是行不通的 – dhpratik 2015-01-05 15:18:44