gpt4 book ai didi

javascript 正则表达式匹配 0、0-9,但不匹配 0-、0-9-、0-9x

转载 作者:行者123 更新时间:2023-12-02 16:15:57 25 4
gpt4 key购买 nike

我正在尝试将文本与模式 0, 0-9 匹配,但不使用 0-, 0-9-, 0x, 0-9x

我尝试了这些 /^(\d-?\d?)^[-a-zA-Z]$/和/^(\d-?\d?)(?!-)$/。这些都不能完全满足我的需求。

您能否提供更好的正则表达式并解释其工作原理?感谢您花时间帮助解决此问题。

最佳答案

您可以尝试以下正则表达式。这不允许使用除数字或连字符以外的任何字符,并且这断言如果存在任何连字符,那么它必须位于中间,而不是在开头或结尾。

^\d(?:-\d)?$

^\d+(?:-\d+)?$

\d+ 匹配一个或多个数字。因此,这也允许像 34-56 这样的字符串。

DEMO

/^\d+(?:-\d+)?$/.test('0-9');
//=>true
/^\d+(?:-\d+)?$/.test('0');
//=>true
/^\d+(?:-\d+)?$/.test('0x');
//=>false

关于javascript 正则表达式匹配 0、0-9,但不匹配 0-、0-9-、0-9x,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29598290/

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