javascript正则表达式完全学习手册

javascript正则表达式完全学习手册

ID:17413657

大小:38.50 KB

页数:3页

时间:2018-08-31

javascript正则表达式完全学习手册_第1页
javascript正则表达式完全学习手册_第2页
javascript正则表达式完全学习手册_第3页
资源描述:

《javascript正则表达式完全学习手册》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、JavaScript正则表达式:菜鸟入门指导第一节:基础学习想要高效地学习和掌握正则表达式的关键是花一天的时间记住所有符号。这可能是我所能提供的最好的建议。坐下来,做些记忆卡片,然后记住它们。以下为最常见的一些符号:.-匹配任意字符,换行符除外*-该符号前面的字符,匹配0次或多次。+-该符号前面的字符,匹配1次或多次?-该符号前面的字符是可选的。匹配0次或1次。d-匹配任何单个数字。w-匹配任何一个字符(包括字母数字以及下划线)。[XYZ]-匹配字符组中的任意一个字符,即X、Y、Z中的任意一个。[XYZ]+-

2、匹配字符组中的一个或多个字符。$-匹配字符串结束的位置。^-匹配字符串开始的位置。[^a-z]-当出现在字符类中时,^表示NOT(非);对于该示例,表示匹配任何非小写字母。很闷吧,不过还是记住它们,记住之后你会知道好处的。第二节:正则表达式和JavaScript本节为最后一节,我们来看看JavaScript方法如何使用正则表达式。1.Test()这个方法接受单个字符串参数,然后返回一个布尔值,该值表明是否找到一个满足条件的值。如果你不需要对特定的匹配结果进行操作,比如,验证用户名,“test”方法已足够完成这个任

3、务。示例var username = 'JohnSmith';   alert(/[A-Za-z_-]+/.test(username)); // returns true   在上面的代码中,我们首先声明一个正则表达式,表示仅允许大写或小写字母、下划线和连字符。将这些可接受的字符放在括号中,就指定了一个字符组。紧随其后的+号表示我们想要正在寻找的是一个或多个前述字符组中的字符。然后使用该范式对变量“JohnSmith”进行测试。由于存在匹配,浏览器的显示框中将显示true。2.Split()你可能对split方

4、法已经很熟了。该方法接受单个正规表达式,表示在哪里进行“分割”。请注意,如果喜欢,你还可以使用字符串。var str = 'this is my string';   alert(str.split(/s/)); // 输出"this, is, my, string"   上面代码中的s表示单个空格,通过它,我们将字符串分割为一个数组。如果想要访问某个特定的值,使用相应的索引即可。var str = 'this is my this string';   alert(str.split(/s/)[4]); 

5、// 输出"string"   3.replace()可能你已经想到了,replace方法可以用来将文本中的一部分(由字符串或正则表达式表示)替换为不同的字符串。示例如果想要将“Hello,World”改为“Hello,Universe”,可以使用下面的代码:var someString = 'Hello, World';   someString = someString.replace(/World/, 'Universe');   alert(someString); // 输出"Hello, Univer

6、se"   应留意的是,对于这个简单的示例,我们本来可以简单的使用.replace('World','Universe')。另外,使用replace方法不会自动重写变量的值,我们必须将返回值再次分配给这个变量:someString。示例2再举一个例子,假设用户要在我们的网站注册一个账号,我们可能想要提供一些基础的安全预防措施。也许我们想要留下他们的用户名,而删除其他任何符号,引号、分号等等。对于JavaScript和正则表达式,执行这类任务是桩琐碎的小事情。var username = 'J;ohnSmith;@

7、%';   username = username.replace(/[^A-Za-zd_-]+/, '');   alert(username); // 输出;@%   看到最后生成的显示值,有人可能会想,上面的代码有错误。事实并非如此。你仔细看看,会发现字母“J”后的分号被删除了,正如我们所期望的那样。为了通知引擎继续搜索字符串查找更多匹配,我们可以做结束的斜杠后面直接添加一个“g”,这个修饰符或标记表示“global(全局)”。修改后的代码如下所示:var username = 'J;ohnSmith;@

8、%';   username = username.replace(/[^A-Za-zd_-]+/g, '');   alert(username); // 输出JohnSmith   现在,正则表达式搜索整个字符串,替换所有必要的字符。让我们看看关键的表达式(.replace(/[^A-Za-zd_-]+/g,'');),要注意,括号内的向上箭头(即^)非常重要。当

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。