gpt4 book ai didi

javascript - 如何为第一个字符和字符串的其余部分定义不同的正则表达式?

转载 作者:行者123 更新时间:2023-12-03 00:18:10 24 4
gpt4 key购买 nike

我想验证并处理一个字符串,它应该是一个电话号码。对于第一个字符,接受数字和 +,对于其余字符,仅接受数字。

我有接受+和数字的解决方案,但仅限于整个字符串:

console.log("asd242++asf43+234".replace(/[^+\d]/g, ""))

但是由于为第一个字符和其余字符定义不同的检查而受到困扰。

最佳答案

您可以使用以下内容:

([^+\d]|(?!^)\+)

它匹配除数字和 + 之外的所有内容,并且不匹配字符串开头的 +!
所以你的测试日志将如下所示:

console.log("+asd242++asf43+234".replace(/([^+\d]|(?!^)\+)/g, ""))

(我在开头添加了一个 + 以表明它可以正确处理此问题!)

查看Demo这表明它符合您的所有情况!

关于javascript - 如何为第一个字符和字符串的其余部分定义不同的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54444065/

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