仅从数字输入中排除 0 作为第一个符号的 HTML 模式

标签 html regex

我有以下问题我需要从数字输入中排除 0 作为起始数字我有以下代码:

<input required type="number" min="1" value="1" id="number" name="number" pattern="[^0]d+"> 

但如果用户决定手动输入 01234 之类的数字,它就不起作用。

最佳答案

要使其正常工作,请将输入类型更改为 text 并使用 ^[1-9]\d*$ 作为模式

<input required type="text" value="1" min="1" id="number" name="number" pattern="^[1-9]\d*$">

此正则表达式不允许任何数量的起始零('01'、'001')或任何非数字字符('1b')并接受一位数字,例如 1

完整工作表示例:

<!DOCTYPE html>
<html>
  <body>
    <form>
       <input required type="text" value="1" min="1" id="number" name="number" pattern="^[1-9]\d*$">
       <input type="submit">
    </form>
  </body>
</html>

关于仅从数字输入中排除 0 作为第一个符号的 HTML 模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30413287/

相关文章:

javascript - HTML 标题属性未显示在影子 dom 元素中

html - 如何查找当前页面使用了哪些 CSS 文件

html - 在图像上 Bootstrap 悬停层

regex - 高效的 Django QuerySet 正则表达式

python - 如何从字符串中提取数据

mysql - 从字符串中获取十进制值的正则表达式

javascript - 如何给自动生成的元素添加onclick事件

JavaScript 已禁用

python - 从字符串的开头或结尾删除特殊字符的正则表达式

javascript - 使用正则表达式仅通过 h1 标签拆分带有 html 的字符串