js正则表达式匹配数字字母下划线等


Posted in Javascript onApril 14, 2015
1、一个正则表达式,只含有汉字、数字、字母、下划线不能以下划线开头和结尾:
^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$ 其中:
^ 与字符串开始的地方匹配
(?!_)不能以_开头
(?!.*?_$)
不能以_结尾
[a-zA-Z0-9_\u4e00-\u9fa5]+
至少一个汉字、数字、字母、下划线
$
与字符串结束的地方匹配
 
放在程序里前面加@,否则需要\\进行转义 @"^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$"
 (或者:@"^(?!_)\w*(?<!_)$"  或者 @" ^[\u4E00-\u9FA50-9a-zA-Z_]+$ " )
 
2、只含有汉字、数字、字母、下划线,下划线位置不限:
 ^[a-zA-Z0-9_\u4e00-\u9fa5]+$
 
3、由数字、26个英文字母或者下划线组成的字符串
^\w+$
 
4、2~4个汉字
 @"^[\u4E00-\u9FA5]{2,4}$"; 
 
5、
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$
 
用:(Abc)+  来分析: XYZAbcAbcAbcXYZAbcAb
 
XYZAbcAbcAbcXYZAbcAb
6、
[^\u4E00-\u9FA50-9a-zA-Z_]
34555#5' -->34555#5'
 
[\u4E00-\u9FA50-9a-zA-Z_]  eiieng_89_  --->  eiieng_89_
_';'eiieng_88&*9_  --> _';'eiieng_88&*9_
_';'eiieng_88_&*9_ --> _';'eiieng_88_&*9_
 
public bool RegexName(string str)
 {
  bool flag=Regex.IsMatch(str,@"^[a-zA-Z0-9_\u4e00-\u9fa5]+$");
  return flag;
 }
 
 Regex  reg=new  Regex("^[a-zA-Z_0-9]+$");  
 if(reg.IsMatch(s))  
 {  
 \\符合规则  
 }  
 else 
 {  
 \\存在非法字符  
 }

以上所述就是本文的全部内容了,希望对大家学习javascript正则表达式能够有所帮助。

Javascript 相关文章推荐
超轻量级的基于jquery的三级展开列表
Apr 26 Javascript
JS自动缩小超出大小的图片
Oct 12 Javascript
自动设置iframe大小的jQuery代码
Sep 11 Javascript
javaScript对文字按照拼音排序实现代码
Dec 27 Javascript
ajax请求乱码的解决方法(中文乱码)
Apr 10 Javascript
Shell脚本实现Linux系统和进程资源监控
Mar 05 Javascript
JS给swf传参数的实现方法
Sep 13 Javascript
jQGrid动态填充select下拉框的选项值(动态填充)
Nov 28 Javascript
ES6新特性四:变量的解构赋值实例
Apr 21 Javascript
Vue中使用的EventBus有生命周期
Jul 12 Javascript
vuex直接赋值的三种方法总结
Sep 16 Javascript
vue从零实现一个消息通知组件的方法详解
Mar 16 Javascript
JavaScript使用Replace进行字符串替换的方法
Apr 14 #Javascript
JavaScript面向对象的实现方法小结
Apr 14 #Javascript
JavaScript使用Prototype实现面向对象的方法
Apr 14 #Javascript
jQuery插件ajaxFileUpload实现异步上传文件效果
Apr 14 #Javascript
Angularjs制作简单的路由功能demo
Apr 14 #Javascript
javascript中几个容易混淆的概念总结
Apr 14 #Javascript
浅谈Sizzle的“编译原理”
Apr 14 #Javascript
You might like
php ss7.5的数据调用 (笔记)
2010/03/08 PHP
解析PHP获取当前网址及域名的实现代码
2013/06/23 PHP
PHP函数checkdnsrr用法详解(Windows平台用法)
2016/03/21 PHP
示例详解Laravel重置密码代码重构
2016/08/10 PHP
PHP商品秒杀问题解决方案实例详解【mysql与redis】
2019/07/22 PHP
php设计模式之适配器模式实例分析【星际争霸游戏案例】
2020/04/07 PHP
js刷新框架子页面的七种方法代码
2008/11/20 Javascript
在UpdatePanel内jquery easyui效果失效的解决方法
2010/04/11 Javascript
javascript里模拟sleep(两种实现方式)
2013/01/25 Javascript
js鼠标及对象坐标控制属性详细解析
2013/12/14 Javascript
js实现汉字排序的方法
2015/07/23 Javascript
Bootstarp基本模版学习教程
2017/02/01 Javascript
nodejs个人博客开发第三步 载入页面
2017/04/12 NodeJs
JavaScript中运算符规则和隐式类型转换示例详解
2017/09/06 Javascript
JavaScript设计模式之调停者模式实例详解
2018/02/03 Javascript
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
详解Vue CLI 3.0脚手架如何mock数据
2018/11/23 Javascript
bootstrap 日期控件 datepicker被弹出框dialog覆盖的解决办法
2019/07/09 Javascript
Electron整合React使用搭建开发环境的步骤详解
2020/06/07 Javascript
微信小程序实现星星评分效果
2020/11/01 Javascript
[16:21]教你分分钟做大人:圣堂刺客
2014/12/03 DOTA
[01:03:27]NAVI vs EG 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/17 DOTA
详解在Python程序中自定义异常的方法
2015/10/16 Python
Python编程中使用Pillow来处理图像的基础教程
2015/11/20 Python
linux安装python修改默认python版本方法
2019/03/31 Python
python、PyTorch图像读取与numpy转换实例
2020/01/13 Python
关于递归的一道.NET面试题
2013/05/12 面试题
美容院经理岗位职责
2014/04/03 职场文书
职业生涯规划书前言
2014/04/15 职场文书
单位考核聘任报告
2015/03/02 职场文书
幼儿园托班开学寄语(2015秋季)
2015/05/27 职场文书
2016入党积极分子党课学习心得体会
2015/10/09 职场文书
公务员学习中国梦心得体会
2016/01/05 职场文书
Python基础之进程详解
2021/05/21 Python
详解Java实践之适配器模式
2021/06/18 Java/Android
node.js使用express-fileupload中间件实现文件上传
2021/07/16 Javascript