Html模式仅从数字输入中排除0作为第一个符号
我有以下问题我需要从数字输入中排除0作为起始数字我有以下代码:Html模式仅从数字输入中排除0作为第一个符号,html,regex,Html,Regex,我有以下问题我需要从数字输入中排除0作为起始数字我有以下代码: <input required type="number" min="1" value="1" id="number" name="number" pattern="[^0]d+"> 但是,如果用户决定手动输入01234之类的数字,它就不起作用了。 <input type="number" pattern="(?!0+)\d+"> 解释 (?!0+) # not followed by any
<input required type="number" min="1" value="1" id="number" name="number" pattern="[^0]d+">
但是,如果用户决定手动输入01234之类的数字,它就不起作用了。
<input type="number" pattern="(?!0+)\d+">
解释
(?!0+) # not followed by any number of zeros (negative look-ahead)
\d+ # at least one digit (by implication the first one is different from zero)
(?!0+)#后面不跟任何数量的零(负前瞻)
\d+#至少一个数字(暗示第一个数字不同于零)
另类
<input type="number" pattern="[1-9]\d*">
要使其工作,请将输入类型更改为
文本
,并使用^[1-9]\d*$
作为模式
<input required type="text" value="1" min="1" id="number" name="number" pattern="^[1-9]\d*$">
“”是代码。
“[1-9]\d+”
对您更有效吗?如前所述,我认为这将允许在第一个位置使用任何非数字字符。您是否看到第二个选项不接受一位数。