gpt4 book ai didi

javascript - 如何查找正则表达式的部分 - 整数?

转载 作者:行者123 更新时间:2023-12-02 18:29:46 25 4
gpt4 key购买 nike

当我尝试接收正则表达式的 3 部分,但如果字符串不完全等于正则表达式,则会返回错误Uncaught TypeError: Cannot read property '1' of null

如何一次尝试接收正则表达式的每个部分

var str = this.value;
var da = str.match(/(\+7)(\d{3})(\d{3})/);
var newStr = da[1] + "(" + da[2] + ")" + da[3];

如何接收 da[1] if str == +7 和 da[2] if str == +7 922 而不会出现错误?

最佳答案

您可以在第二个捕获组后面加上 ? 以使其可选:

var da = str.match(/(\+7)(\d{3})?/);
// -----------------------------^

那么对于字符串"+7",匹配成功,da[1]将是+7,并且da[2] 将是未定义

更新:对于您添加到问题中的第三个捕获组也是如此。 :-)

关于javascript - 如何查找正则表达式的部分 - 整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17930904/

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