gpt4 book ai didi

javascript - 正则表达式仅允许连字符和数字

转载 作者:行者123 更新时间:2023-12-01 02:22:33 25 4
gpt4 key购买 nike

我使用正则表达式 ^[0-9]+$" 仅允许数字。我也想允许使用连字符 - 和空格。

任何人都可以帮我将正则表达式修改为正确的吗?

我使用以下 JS 代码来实现相同的目的,但这样如果用户复制并粘贴文本,则按键不会被计算在内。

//Allowed characters are : 8 = Back space,
//9 = Horizontal tab, 27 = esc, 127 = Delete,
//13 = Enter digits = 48 to 57, 45 = hypen

$('#PostalCode').keypress(function (e) {
var key = (e.keyCode ? e.keyCode : e.which);
return (key == 8 || key == 9 || key == 127 || key == 27 || key == 13 || key == 45 || (key >= 48 && key <= 57));
});

最佳答案

您可以在字符类中添加 - 和空格,如下所示:

^[0-9 -]+$

请务必将 - 放在后面或前面(因为它不会被误认为是范围),或者转义它:

^[0-9 \-]+$

您还可以使用 \d 代替 0-9,因为它们是等效的:

^[\d -]+$

关于javascript - 正则表达式仅允许连字符和数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11899928/

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