我有一个由15位数字组成的字符串。 347405405655278
。我需要在第4位后添加一个空格,然后在第10位后添加空格,使其看起来像3474 054056 55278
。我可以使用正则表达式实现这一目标吗?
由于正则表达不是我的一杯茶,因此需要正则表达式大师的帮助。任何帮助表示赞赏。
提前致谢
答案 0 :(得分:11)
在正则表达式的帮助下,您可以使用下面给出的代码来实现所需的结果:
var result = "347405405655278".replace(/^(.{4})(.{6})(.*)$/, "$1 $2 $3");
答案 1 :(得分:9)
为什么不进行子串连接?
var data = "347405405655278";
data = data.substr(0, 4) + " " + data.substr(4, 6) + " " + data.substr(10);
console.log(data);
# 3474 054056 55278
或者如果你想严重使用RegEx,那么as suggested by T.J. Crowder,
var result = "347405405655278".replace(/^(.{4})(.{6})(.*)$/, "$1 $2 $3");
console.log(result);
# 3474 054056 55278
答案 2 :(得分:0)
您可以搜索此内容:
(.{4})(.{6})(.*)
并替换为:
$1 $2 $3
这将匹配前4个字符,接下来的6个字符,然后是其余字符。替换然后将其替换为4个字符+空格+ 6个字符+空格+其余部分。