https://blog.csdn.net/xushichang/article/details/4041507


//输入姓名的正则校验   e.currentTarget.value = e.currentTarget.value.replace(/[^\u4E00-\u9FA5+]/ig,'')  
//身份证正则校验
let reg = /^(([1][1-5])|([2][1-3])|([3][1-7])|([4][1-6])|([5][0-4])|([6][1-5])|([7][1])|([8][1-2]))\d{4}(([1][9]\d{2})|([2]\d{3}))(([0][1-9])|([1][0-2]))(([0][1-9])|([1-2][0-9])|([3][0-1]))\d{3}[0-9xX]$/ig;
 

正则表达式控制Input输入内容

2009年04月01日 17:15:00

阅读数:21747

不能输入中文
 <input type="text" name="textfield"  onkeyup="this.value=this.value.replace(/[^/da-z_]/ig,'');"/>
只能输入 数字和下划线
<input onkeypress="return (/[/d_]/.test(String.fromCharCode(event.keyCode)))" style="ime-mode:Disabled" />
只能输入 数字和小数点
<input onkeypress="return (/[/d.]/.test(String.fromCharCode(event.keyCode)))" style="ime-mode:Disabled" />

只允许输入汉字</br>
<input name="username" type="text" onkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')">

其一,只允许输入数字和小数点。
<input onKeypress="return (/[/d.]/.test(String.fromCharCode(event.keyCode)))" style="ime-mode:Disabled">

其二,判断的更详细一些,甚至22..2这样不算数字也判断得出来

<script>
function check(){
if (isNaN(tt.value))
{alert("非法字符!");
tt.value="";}
}
</script>
<input type="text" name="tt" onkeyup="check();">

其三,只允许输入整数。其实也完全可以根据第三条来举一反三做一些限制。

<script language=javascript>
function onlyNum()
{
if(!(event.keyCode==46)&&!(event.keyCode==8)&&!(event.keyCode==37)&&!(event.keyCode==39))
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
event.returnValue=false;
}
</script><input onkeydown="onlyNum();" style="ime-mode:Disabled>
结语,其实

style="ime-mode:Disabled
这句是比较实用的。意为关闭输入法。省得有些人开着全角输入数字,结果输入不进去来找你哭天抹泪的,还怪你设计的不好。

只允许输入数字
<input name="username" type="text" onkeyup="value=this.value.replace(//D+/g,'')">

只允许输入英文字母、数字和下划线(以下二种方法实现)
<input name="username" type="text" style="ime-mode:disabled">
<input name="username" type="text" onkeyup="value=value.replace(/[^/w/.//]/ig,'')">

只允许输入英文字母、数字和&=@
<input name="username" type="text" onkeyup="value=value.replace(/[^/w=@&]|_/ig,'')">

只允许输入汉字
<input name="username" type="text" onkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')">

https://blog.csdn.net/lqh4188/article/details/44037245

1.JS正则验证示例

  1.  
     
  2.  
    <div>
  3.  
    <%--只可录入数字,直接用正则就可以--%>
  4.  
    <input type="text" onkeyup="this.value=this.value.replace(/[^0-9.]/g,'')" />
  5.  
    <%--验证百分比,使用JS正则验证--%>
  6.  
    <input type="text" onkeyup="this.value=this.value.replace(/[^0-9.]/g,'')" onblur="checkPercent(this)" />
  7.  
    <%--验证电话号码,使用JS正则验证--%>
  8.  
    <input type="text" onkeyup="this.value=this.value.replace(/[^0-9.]/g,'')" onblur="checkMobile(this.value)" />
  9.  
    </div>
  10.  
    <!--JS 正则验证显示-->
  11.  
    <script type="text/javascript">
  12.  
    //验证百分比
  13.  
    function checkPercent(obj) {
  14.  
    if (obj.value != "") {
  15.  
    var str = obj.value;
  16.  
    var pattern = /^([1-9]{1}[0-9]{0,1}|0)(\.\d{1,2}){0,1}$/;
  17.  
    if (!str.match(pattern)) {
  18.  
    alert("格式错误,有效格式如:88.88%(整数最多两位,小数位最多为两位)");
  19.  
    obj.value = "";
  20.  
    obj.focus();
  21.  
    return false;
  22.  
    }
  23.  
    }
  24.  
    return true;
  25.  
    }
  26.  
    //验证电话
  27.  
    function checkMobile(s) {
  28.  
    if (trim(s) != "") {
  29.  
    var regu = /^[1][3-8][0-9]{9}$/;
  30.  
    var re = new RegExp(regu);
  31.  
    if (re.test(s)) {
  32.  
    alert(s);
  33.  
    return true;
  34.  
    } else {
  35.  
    alert("电话录入格式错误");
  36.  
    return false;
  37.  
    }
  38.  
    }
  39.  
    }
  1.  
    //验证电话
  2.  
    var checkPhone = function () { 
  3.  
        var $phone = $("#memberPhone");
  4.  
        if (!/^(13[0-9]|14[0-9]|15[0-9]|16[0-9]|17[0-9]|18[0-9])\d{8}$/i.test($phone.val())) 
  5.  
        {
  6.  
          alert("温馨提示:请输入正确手机号!");
  7.  
          $phone.focus();
  8.  
          return;
  9.  
        }
  10.  
    }
  11.  
    </script>
  12.  
    <!--JS trim()方法-->
  13.  
    <script type="text/javascript">
  14.  
    function trim(str) { //删除左右两端的空格
  15.  
    return str.replace(/(^\s*)|(\s*$)/g, "");
  16.  
    }
  17.  
    function ltrim(str) { //删除左边的空格
  18.  
    return str.replace(/(^\s*)/g, "");
  19.  
    }
  20.  
    function rtrim(str) { //删除右边的空格
  21.  
    return str.replace(/(\s*$)/g, "");
  22.  
    }
  23.  
    </script>

2.正则验证示例

说明:正则表达式通常用于两种任务:1.验证,2.搜索/替换。用于验证时,通常需要在前后分别加上^和$,以匹配整个待验证字符串;搜索/替换时是否加上此限定则根据搜索的要求而定,此外,也有可能要在前后加上\b而不是^和$。此表所列的常用正则表达式,除个别外均未在前后加上任何限定,请根据需要,自行处理。

说明 正则表达式
网址(URL) [a-zA-z]+://[^\s]*
IP地址(IP Address) ((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)
电子邮件(Email) \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
QQ号码 [1-9]\d{4,}
HTML标记(包含内容或自闭合) <(.*)(.*)>.*<\/\1>|<(.*) \/>
密码(由数字/大写字母/小写字母/标点符号组成,四种都必有,8位以上) (?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$
日期(年-月-日) (\d{4}|\d{2})-((1[0-2])|(0?[1-9]))-(([12][0-9])|(3[01])|(0?[1-9]))
日期(月/日/年) ((1[0-2])|(0?[1-9]))/(([12][0-9])|(3[01])|(0?[1-9]))/(\d{4}|\d{2})
时间(小时:分钟, 24小时制) ((1|0?)[0-9]|2[0-3]):([0-5][0-9])
汉字(字符) [\u4e00-\u9fa5]
中文及全角标点符号(字符) [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee]
中国大陆固定电话号码 (\d{4}-|\d{3}-)?(\d{8}|\d{7})
中国大陆手机号码 1\d{10}
中国大陆邮政编码 [1-9]\d{5}
中国大陆身份证号(15位或18位) \d{15}(\d\d[0-9xX])?
非负整数(正整数或零) \d+
正整数 [0-9]*[1-9][0-9]*
负整数 -[0-9]*[1-9][0-9]*
整数 -?\d+
小数 (-?\d+)(\.\d+)?
不包含abc的单词 \b((?!abc)\w)+\b

3.正则替换字符串中图片标签

正则:<\s?img[^>]*>
var contesStr = contesStr.replace(/<\s?img[^>]*>/gi, ''); 

4.正则匹配所有p标签

正则:<\S?p>  
可以匹配<p>  </p>

正则表达式控制Input输入内容 ,js正则验证方法大全的更多相关文章

  1. js正则验证方法大全

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...

  2. 实时监听input输入内容的N种方法

    现在有一个需求,需要我们实时监听input输入框中的内容,从而带来更好的用户体验,而不是等我们全部输入完毕才告诉我们格式不对首先我们创建一个input输入框 <form name='loginF ...

  3. js用正则表达式控制价格输入

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...

  4. 手机号码js正则验证

    手机号码js正则验证 var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; if (!myreg.test($(" ...

  5. js正则验证特殊字符

    js正则验证特殊字符 方案一 var regEn = /[`~!@#$%^&*()_+<>?:"{},.\/;'[\]]/im, regCn = /[·!#¥(--):: ...

  6. 网站开发进阶(二十六)js刷新页面方法大全

    js刷新页面方法大全 在项目开发过程中,需要实现刷新页面.经过学习,发现下面这条语句就可以轻松实现. location.reload(); // 刷新页面 有关刷新页面的其它方法,具体学习内容如下,有 ...

  7. js刷新页面方法大全(转)

    刷新页面实现方式总结(HTML,ASP,JS) 转载  2008-11-13   作者:    我要评论 多种方法实现页面的刷新代码 定时刷新: 1,<script>setTimeout( ...

  8. js正则表达式:学习网址和部分正则验证

    https://www.cnblogs.com/chenmeng0818/p/6370819.html ① 不以0开头的多个数字,但可以是单个0,必须为数字,位数不允许超过10个. var reg=/ ...

  9. js正则验证

    /判断输入内容是否为空    function IsNull(){        var str = document.getElementById('str').value.trim();      ...

随机推荐

  1. C#延迟执行

    借鉴于该篇博客:http://kb.cnblogs.com/page/42581/ 先看两个方法 public class YieldClasses { public static IEnumerab ...

  2. [Lua快速了解一下]Lua的OOP

    __index(a, b) 对应表达式 a.b 上面我们看到有__index这个重载,这个东西主要是重载了find key的操作.这波操作可以让Lua变得有点面向对象的感觉,让其有点像Javascri ...

  3. [Windows] IIS6 部署ISAPI

    环境: OS:Windows Server 2003  Enterprise sp2 34位 IIS:6.0 ISAPI: delphi xe 编译的webbroker isapi dll 32位 ( ...

  4. [示例] Drag And Drop for FireMonkey (Win & macOS)

    源码下载: https://github.com/OneChen/DragAndDrop 效果:

  5. ifstat命令行统计网络流量

      下载 ifstat ,  http://gael.roualland.free.fr/ifstat/ifstat-1.1.tar.gz   tar xzvf ifstat-1.1.tar.gz   ...

  6. Service Worker 缓存文件处理

    交代背景 前段时间升级了一波Google Chrome,发现我的JulyNovel站点Ctrl+F5也刷新不了,后来发现是新的Chrome已经支持Service Worker,而我的JulyNovel ...

  7. Windows server 2008 R2中安装MySQL !

    我今天打算在Windows server 2008 R2中安装MySQL,可是总是发现ODBC连接器安装错误,无论我采用MySQL的整体安装包,还是单独的ODBC连接器安装文件!! 最后上网搜索了很久 ...

  8. Origin如何使曲面变平滑?

    在“绘图属性” - “绘图细节”窗口中选中 Layer1 下的曲面数据,“Colormap/Contours” 选项下有“Level”标签,选中并设置“Minor Levels”,将其数值调大即可.

  9. fzu月赛(2015.11)(思维)

    Problem 2205 据说题目很水 Sunday最近对图论特别感兴趣,什么欧拉回路什么哈密顿回路,又是环又是树.在看完一本书后,他对自己特别有信心,便找到大牛牛犇犇,希望他出一题来考考自己. 在遥 ...

  10. 2个list取交集

    list操作 element in a list and element in other list,元素在一个list,且在另一个list 在数据量大的时候使用set,把list转为集合,此方法适合 ...