在每n个字符后插入一个字符,但仅限于前x个字符

时间:2013-06-28 07:02:06

标签: javascript regex

我有一个13个字符的字符串,例如XXXXXXXXXXXXX。我希望在每三个字符后输入一个连字符,但仅限于使用JQuery和可能的正则表达式的前三个出现。

这意味着我需要我的字符串为XXX-XXX-XXX-XXXX。

如果我使用str.replace(/(.{3})/g, "$1-")str是我的字符串,正如我在其他帖子中看到的那样,它会产生XXX-XXX-XXX-XXX-X

非常感谢任何帮助。

谢谢你们。

2 个答案:

答案 0 :(得分:8)

.replace(/(.{3})(.{3})(.{3})/,'$1-$2-$3-')怎么样?

答案 1 :(得分:0)

如果你想用Regex做这个可以工作......

 // Not nice but works
 var text = "XXXXXXXXXXXXX";
 text.replace(/(...)(...)(...)(....)/g, "$1-$2-$3-$4");
 // Result  "XXX-XXX-XXX-XXXX" Chrome 27+