最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
javascript 正则表达式之英文、中文、数字、下划线
时间:2013-02-22 编辑:简简单单 来源:一聚教程网
代码如下 | 复制代码 |
^[wu4E00-u9FA5uF900-uFA2D]*$ |
1、一个正则表达式,只含有汉字、数字、字母、下划线不能以下划线开头和结尾:
代码如下 | 复制代码 |
^(?!_)(?!.*?_$)[a-zA-Z0-9_u4e00-u9fa5]+$ |
其中:
^ 与字符串开始的地方匹配
(?!_) 不能以_开头
(?!.*?_$) 不能以_结尾
代码如下 | 复制代码 |
[a-zA-Z0-9_u4e00-u9fa5]+ |
至少一个汉字、数字、字母、下划线
$ 与字符串结束的地方匹配
放在程序里前面加@,否则需要进行转义
代码如下 | 复制代码 |
@"^(?!_)(?!.*?_$)[a-zA-Z0-9_u4e00-u9fa5]+$" (或者:@"^(?!_)w*(? |
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_
public bool RegexName(string str)
Regex reg=new Regex("^[a-zA-Z_0-9]+$"); |
多行模式
一下代码中的正则表达式想要匹配行末的一个单词.它只会匹配最后的Sixth, 但实际上这个字符串包含两个换行符,因
此, Second, Fourth也应该匹配出来,因此引入了多行模式
代码如下 | 复制代码 |
var toMarch6 = "First SecondnThird FourthnFifth Sixth"; var regExp6 = /(w+)$/g; var sArr6 = toMarch6.match(regExp6); dwr(sArr6); |
要引入多行模式,需要在正则表达式后面添加m 选项, 这会让$边界匹配换行符(n) 和字符串真正的结尾.
代码如下 | 复制代码 |
var regExp6 = /(w+)$/gm; |
判断日期的正则表达式:
代码如下 | 复制代码 |
function isValidDate(s){ var reDate = /(?:[1-9]|0[1-9]|[12][0-9]|3[01])/(?:[1-9]|0[1-9]|1[0-2])/(?:19d{2}|20d{2})/; return reDate.test(s); } |
正则字符串替换
//replace方法,用于替换字符串 var str ="some money"; alert(str.replace("some","much"));//much money //replace的第一个参数可以为正则表达式 var re = /s/;//空白字符 alert(str.replace(re,"%"));//some%money //在不知道字符串中有多少空白字符时,正则表达式极为方便 str ="some some tsometf"; re = /s+/; alert(str.replace(re,"#"));//但这样只会将第一次出现的一堆空白字符替换掉 //因为一个正则表达式只能进行一次匹配,s+匹配了第一个空格后就退出了 re = /s+/g;//g,全局标志,将使正则表达式匹配整个字符串 alert(str.replace(re,"@"));//some@some@some@ //另一个与之相似的是split var str = "a-bd-c"; var arr = str.split("-");//返回["a","bd","c"] //如果str是用户输入的,他可能输入a-bd-c也可能输入a bd c或a_bd_c,但不会是abdc(这样就说他输错了) str = "a_db-c";//用户以他喜欢的方式加分隔符s re=/[^a-z]/i;//前面我们说^表示字符开始,但在[]里它表示一个负字符集 //匹配任何不在指定范围内的任意字符,这里将匹配除字母处的所有字符 arr = str.split(re);//仍返回["a","bd","c"]; //在字符串中查找时我们常用indexOf,与之对应用于正则查找的方法是search str = "My age is 18.Golden age!";//年龄不是一定的,我们用indexOf不能查找它的位置 re = /d+/; alert(str.search(re));//返回查找到的字符串开始下标10 //注意,因为查找本身就是出现第一次就立即返回,所以无需在search时使用g标志 //下面的代码虽然不出错,但g标志是多余的 re=/d+/g; alert(str.search(re));//仍然是10
-
上一个: js中实现滚屏效果方法总结
相关文章
- javascript正则表达式 (中文,数字,字母) 03-24
- HTML简单购物数量小程序代码展示 10-31
- html canvas实现弹幕功能 10-31
- HTML中空格表示的意义 10-31
- html area标签解读 10-31
- html使用表单标签实现注册页面代码展示 10-31