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

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

什么是表单验证正则?

在开发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日

相关文章

  • EasyUI修改DateBox和DateTimeBox的默认日期格式示例

    下面是针对EasyUI修改DateBox和DateTimeBox的默认日期格式的完整攻略。 需求分析 在使用EasyUI组件的时候,DateBox和DateTimeBox组件默认展示的日期格式可能并不符合我们的需求,需要修改默认展示的日期格式。 解决方案 EasyUI的DateBox和DateTimeBox组件在初始化时都会有一个options参数,其中包含…

    jquery 2023年5月28日
    00
  • jQWidgets jqxTabs closeButtonSize 属性

    下面我将为你详细讲解一下“jQWidgets jqxTabs closeButtonSize 属性”的完整攻略。 概述 closeButtonSize 是jqxTabs组件的一个属性,用于设置分页标签上关闭按钮的大小。该属性的默认值为 18。 语法 下面是closeButtonSize属性的语法: $("#jqxTabs").jqxTab…

    jquery 2023年5月12日
    00
  • jQWidgets jqxNavBar selectedItem属性

    jQWidgets是一个流行的JavaScript UI库,可以用于构建现代和美观的用户界面。其中,jqxNavBar是jQWidgets库中的一种导航栏组件。jqxNavBar提供了许多属性和方法,其中selectedItem属性就是控制当前选定项的属性。 当用户单击导航栏中的一个项时,selectedItem属性将设置为该项的值。可以使用selected…

    jquery 2023年5月12日
    00
  • jQWidgets jqxTree展开事件

    以下是关于 jQWidgets jqxTree 组件中展开事件的详细攻略。 jQWidgets jqxTree 展开事件 jQWidgets jqxTree 组件提供了多个事件,其中包括展开事件。展开事件在节点被展开时发,可以用于在节点展开时执行自定义操作。 语法 $(‘#tree’).on(‘expand’, function (event) { // 在…

    jquery 2023年5月11日
    00
  • jQWidgets jqxRadioButton改变事件

    以下是关于 jQWidgets jqxRadioButton 组件中改变事件的详细攻略。 jQWidgets jqxRadioButton 改变事件 jQWidgets jqxRadioButton 组件的 change 事件在单选的选中状态发生改变时触发。 语法 // 绑定 change 事件 $(‘#radioButton’).on(‘change’, …

    jquery 2023年5月12日
    00
  • jQuery UI Autocomplete select 事件

    jQuery UI 的 Autocomplete 组件提供了一个 select 事件,该事件在用户选择 Autocomplete 中的选项时触发。在本教程中,我们将详细介绍 Autocomplete 的 select 事件的使用方法。 select 事件基本语法如: $( ".selector" ).autocomplete({ sele…

    jquery 2023年5月11日
    00
  • jquery ajax跨域解决方法(json方式)

    jQuery AJAX跨域解决方法(JSON方式) 在前后端分离的现代Web开发中,我们通常使用AJAX(Asynchronous JavaScript and XML)来异步获取数据并更新网页内容,提升用户体验。但是,由于浏览器的同源策略(Same-Origin Policy)限制,AJAX请求只能访问同源的资源,即协议(HTTP/HTTPS)、域名和端口…

    jquery 2023年5月28日
    00
  • 如何在jQuery UI DatePicker中改变日期格式

    jQuery UI DatePicker是一个流行的日期选择器插件,它允许用户从一个日历中选择日期。在本攻略中,我们将详细介绍如何在jQuery UI DatePicker中改变日期格式,并提供两个示例来说明它们的用途。 使用dateFormat选项 jQuery UI DatePicker提供了一个名为“dateFormat”的选项,该选项允许我们指定日期…

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