gpt4 book ai didi

javascript - 使用带有特殊字符的正则表达式进行数字格式化

转载 作者:搜寻专家 更新时间:2023-11-01 04:21:25 24 4
gpt4 key购买 nike

我正在学习正则表达式,我想在 React 应用程序中实现它,所以当我在输入字段上写东西时,我想让用户只写数字和最大一个空格。此字符串还必须以 + 字符开头。我的正则表达式工具显示了良好的结果,但在应用程序中我无法编写任何内容。

const handlePhone = ({currentTarget}) => {
let val = currentTarget.value;
// Regular expression
const reg = /^\+\d+/g;
const isNumber = val.match(reg);
if (isNumber || val === '') {
setFieldValue('phone', val);
}
};

我想用这个表达式来实现这个:以 + 开头,然后你可以写一些数字。

enter image description here

但是在应用程序中我不能写任何东西。为什么这个工具与这个现场匹配如此不同?

有了这个:

const reg = /^\+\d+( \d+)*$/;

enter image description here

最佳答案

这应该有效:

^\+?\d+( \d+)?$
  • ^ - 开始 anchor
  • \+? - 可选择以加号开头
  • \d+ - 后面至少需要一位数字
  • (\d+)? - 可选择允许一个空格,该空格后必须跟一个或多个数字
  • $ - 结束 anchor

https://regex101.com/r/pxbefb/1

关于javascript - 使用带有特殊字符的正则表达式进行数字格式化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57871187/

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