您的位置:首页 > 编程语言 > ASP

ASP.NET-第六天-HTML基础

2013-01-06 20:44 204 查看

第六天

Js中的正则表达式:元字符

. 表示任意一个字符

\d [0-9]大小写,表示的正好相反

\w [a-z A-Z 0-9]

\s 所有的空字符串

| 或 通过()改变优先级,()还能提取组

限定符:

* 出现0次或多次

+ 出现最少一次



{n}出现n次{5,}最少出现5次{5,10}最少5次,最多10次

^非

^开始$结束,加上开始和结束,表示完全匹配;

Matchs提取

创建正则表达式(六位整数的变量)

验证是否是合法的变量:(返回值是bool类型)

E-mail的正则表达式:

Test相当于IsMatch

Exec相当于match,如果正则表达式中没有提取组,则返回的当前提取到的匹配字符串,如果正则表达式中有提取组信息,则返回一个数组,该数组中第一个元素时匹配

要想让exec()方法,提取所有的匹配字符,需要:

1.在创建正则表达式之后,加上一个g,表示全局模式;

2.反复调用exec()方法;

3.注意:如果不加g,就算是反复调用,结果也只是,第一个符合的字符;

var res = regN.exec(msg);




直接调用一次exec方法相当于c#中的Match()方法,只能提取字符串中第一个匹配的字符串

var regN = /\d{5}/g;

var res = regN.exec(msg);

while (res) {


alert(res);

res = regN.exec(msg);

}

如果是这个:

var regN = /(\d{2})(\d{3})/g;

结果是符合条件的字符,和字符的前两个,和字符的后三个,这三个字符组成了一个数组;

通过match方法提取的时候,加了g 的,则会将所有的匹配字符都提取出来,返回一个匹配数组;

加了分组的提取,又加上了g,不会出现,匹配字符的分组;只有所有匹配的字符组成的分组;(msg是要提取的字符串)不用循环就能提取

字符串的替换:

Replace()方法,在正则表达式中用普通的字符串也行,想要将所有的匹配字符都替换掉,则在正则表达式后面加上g;

替换其中的一部分,则还是使用$1、$2

去掉字符串两端的空格:(js中没有Trim()方法)

在写正则表达式的时候,不要想着,写一个全能的正则表达式,就写一个简单的,符合当前要求的,这样比较高效;

自己写一个trim方法:(这个扩展方法,不建议使用)

这个string不是我们自己定义的类型,所以不要在不是自己定义的类型中随便增加扩展方法;否则,一旦原来的类型string,在新版本中也增加了同名的方法,这个时候就会造成很大的麻烦;所以所不建议使用;

压缩文件:

Js库提供了

替换键

将tab键用回车替换

尽量不声明全局变量,就算要使用,也要将变量放到一个对象中;

通过对象与对象的属性来模拟命名空间的概念;

浏览器的不兼容:

Widow。Event

Ff中使用if中的语句,IE中使用else中的语句
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐