表单验证常用正则(强烈推荐大家收藏下)

yizhihongxing

以下是关于“表单验证常用正则”的完整攻略。

什么是表单验证正则?

在开发Web应用时,表单验证是必不可少的,它可以防止用户输入非法数据,保证数据的正确性和完整性。而表单验证正则则是一种验证输入数据是否符合预期格式的基本手段。

常用表单验证正则

常用的表单验证正则可以归纳为以下几种类型:

1. 验证数字

  • 验证整数:/^-?\d+$/
  • 验证正整数:/^\d+$/
  • 验证负整数:/^-?\d+$/
  • 验证浮点数:/^-?\d+(\.\d+)?$/
  • 验证正浮点数:/^\d+(\.\d+)?$/
  • 验证负浮点数:/^-?\d+(\.\d+)?$/

2. 验证字符

  • 验证中文字符:/^[\u4e00-\u9fa5]+$/
  • 验证英文字母:/^[a-zA-Z]+$/
  • 验证数字和英文字母:/^[0-9a-zA-Z]+$/

3. 验证日期时间

  • 验证日期格式:/^\d{4}-\d{1,2}-\d{1,2}$/
  • 验证时间格式:/^([01][0-9]|2[0-3]):[0-5][0-9]$/
  • 验证日期时间格式:/^\d{4}-\d{1,2}-\d{1,2}\s([01][0-9]|2[0-3]):[0-5][0-9]$/

4. 验证其他

  • 验证邮箱地址:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
  • 验证手机号码:/^1[3456789]\d{9}$/
  • 验证身份证号码:/^\d{15}|\d{18}$/

示例

以下是两个示例,展示如何使用表单验证正则。

示例一

验证一个英文名字,只允许输入大小写字母和空格,长度不超过20个字符。

<!DOCTYPE html>
<html>
<head>
    <title>示例</title>
</head>
<body>
    <form>
        <input type="text" name="name" id="name" maxlength="20">
        <span id="nameError" style="color: red;"></span>
        <input type="submit" name="submit">
    </form>
    <script>
        var reg = /^[a-zA-Z ]{1,20}$/;
        var nameInput = document.getElementById('name');
        var nameError = document.getElementById('nameError');
        nameInput.onblur = function() {
            if (reg.test(this.value)) {
                nameError.innerHTML = '';
            } else {
                nameError.innerHTML = '请输入正确的英文名字';
            }
        };
    </script>
</body>
</html>

在该示例中,使用/^[a-zA-Z ]{1,20}$/正则表达式来验证英文名字,其中^[a-zA-Z ]{1,20}$表示只允许输入大小写字母和空格,长度不超过20个字符。

示例二

验证一个密码,要求包含大小写字母、数字和特殊字符,长度在8到16位之间。

<!DOCTYPE html>
<html>
<head>
    <title>示例</title>
</head>
<body>
    <form>
        <input type="password" name="password" id="password" maxlength="16">
        <span id="passwordError" style="color: red;"></span>
        <input type="submit" name="submit">
    </form>
    <script>
        var reg = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[a-zA-Z]).{8,16}$/;
        var passwordInput = document.getElementById('password');
        var passwordError = document.getElementById('passwordError');
        passwordInput.onblur = function() {
            if (reg.test(this.value)) {
                passwordError.innerHTML = '';
            } else {
                passwordError.innerHTML = '密码必须由大小写字母、数字和特殊字符组成,长度在8到16位之间';
            }
        };
    </script>
</body>
</html>

在该示例中,使用/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[a-zA-Z]).{8,16}$/正则表达式来验证密码,其中/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[a-zA-Z]).{8,16}$/表示密码必须由大小写字母、数字和特殊字符组成,长度在8到16位之间。

好了,以上就是关于“表单验证常用正则”的完整攻略。希望这些示例能对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:表单验证常用正则(强烈推荐大家收藏下) - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • jquery解析XML及获取XML节点名称的实现代码

    以下是关于“jquery解析XML及获取XML节点名称的实现代码”的攻略。 1. 解析XML文档 使用 jQuery 解析 XML 文档非常简单,可以使用 $.parseXML() 方法将 XML 格式的字符串转换为 XML 文档对象,然后使用 jQuery 对象的 API(如 find() / filter() / each())对文档进行操作。 示例代码…

    jquery 2023年5月27日
    00
  • Jquery post传递数组方法实现思路及代码

    当我们需要用 jQuery 的 AJAX 请求发送数组数据时,可以使用 $.post() 方法,并将数组作为参数传递。下面是使用 Jquery post 传递数组的步骤及代码实现: 步骤1:准备数据 首先,需要准备一个包含要传递的数据的数组,下面是一个示例: var myArray = ["apple", "banana&quo…

    jquery 2023年5月28日
    00
  • jQWidgets jqxListBox getItems()方法

    jqxListBox 是 jQWidgets 提供的一种列表框控件,用于在 Web 应用程序中创建列表。getItems() 方法用于获取 jqxListBox 控件中所有项。以下是 jqxListBox 的 getItems() 方法的详细说明: getItems() 方法 getItems() 方法用于获取 jqxListBox 控件中所有项。该方法返回…

    jquery 2023年5月10日
    00
  • 关于jQuery中的end()使用方法

    下面是关于jQuery中的end()使用方法的完整攻略。 1. end()方法的作用 jQuery的end()方法是一个链式操作的方法,作用是结束当前链条,并返回到上一个选择器的状态,即恢复上一个选择器的上下文。这使得我们可以在一个链式操作中多次切换选择器,并使得代码更加简洁易懂。 2. 如何使用end()方法? 在jQuery中,我们通常使用选择器来选择需…

    jquery 2023年5月28日
    00
  • jQWidgets jqxTextArea minLength属性

    下面是关于jQWidgets jqxTextArea minLength属性的详细讲解。 什么是jQWidgets jqxTextArea minLength属性? jQWidgets jqxTextArea 是一个领先的Javascript框架,用于创建各种跨浏览器的企业级Web应用程序。minLength属性是jqxTextArea控件的一个属性,用于指…

    jquery 2023年5月12日
    00
  • jQuery UI菜单禁用选项

    jQuery UI Menu 是一个强大的 JavaScript 库,它提供了许多选项和功能,以便创建自定义的菜单。其中,禁用选项用于禁用菜单中的某些选项。以下是详细攻略,含两个示例,演示如何使用禁用选项: 步骤1:引库 在使用之前,需要先 HTML 引入 jQuery 库和 jQuery UI 库。可以通过以下方式引入: <link rel=&quo…

    jquery 2023年5月9日
    00
  • 如何用jQuery Mobile制作迷你表单元素的水平分组按钮

    以下是使用jQuery Mobile制作迷你表单元素的水平分组按钮的完整攻略: 1. 引入jQuery Mobile库 在HTML文件中引入jQuery Mobile库,可以通过CDN或者下载本地文件的方式引入。以下是通过CDN引入的示例代码: <head> <meta charset="utf-8"> <m…

    jquery 2023年5月11日
    00
  • jQuery UI spinner变化事件

    以下是关于 jQuery UI Spinner 变化事件的详细攻略: jQuery UI Spinner 变化事件 spinchange 事件在 Spinner 值发生变化并停止时触发。可以使用该事件执行一些操作,例如更新相关的 UI 元素或向服务器发送数据。 语法 $( ".selector" ).spinner({ spinchang…

    jquery 2023年5月11日
    00
合作推广
合作推广
分享本页
返回顶部