gpt4 book ai didi

javascript - 正则表达式匹配以数字结尾的字符串的前缀和后缀

转载 作者:行者123 更新时间:2023-11-30 08:26:10 27 4
gpt4 key购买 nike

我想使用正则表达式找出字符串的前缀和后缀,如下所示:

T12231 should match ['T', '12231']

Acw2123 should match ['Acw', '2123']

121Ab should match ['121ab', null]

1213 should match [null, '1213']

使用此正则表达式 /([0-9]+)$/g 可以轻松地仅匹配字符串末尾的数字。

匹配从字符串开头到这一点的所有内容我都没能做到。我得到的最接近的结果是第一组将除最后一个数字之外的所有内容与 /^(.*)([0-9]+)$/g 匹配。

最佳答案

你可以让第一个捕获组变得懒惰,.*? 所以它匹配尽可能短,也就是说,让第二个捕获组尽可能长:

var s = ["T12231", "Acw2123", "121Ab", "1213"];

console.log(
s.map(x => x.replace(/^(.*?)([0-9]*)$/, "$1 $2"))
);

将分割结果压入数组:

var s = ["T12231", "Acw2123", "121Ab", "1213"];

var arr = [];
s.forEach(x => x.replace(/^(.*?)([0-9]*)$/, (string, $1, $2) => arr.push([$1, $2])));

console.log(arr);

关于javascript - 正则表达式匹配以数字结尾的字符串的前缀和后缀,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45335146/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com