- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
正则表达式完全学习手册菜鸟入门指导
【转】正则表达式完全学习手册 菜鸟入门指导
正则表达式看起来很吓人,不容易让人亲近,但它的确很好用,可以很大程度上提高你的开发效率。本文从零开始介绍了应如何学习正则表达式。文中范例主要为JavaScript。
【51CTO精选译文】正则表达式可以很恐怖,真得很恐怖。幸运的是,一旦记住每个符号所表达的意思,恐惧就会快速消退。如果你对正则表达式一无所知,正如文章标题,那你又就有很多东西要学了。下面让我们马上开始吧。
第一节:基础学习
想要高效地学习和掌握正则表达式的关键是花一天的时间记住所有符号。这可能是我所能提供的最好的建议。坐下来,做些记忆卡片,然后记住它们。以下为最常见的一些符号:
.-匹配任意字符,换行符除外(如果dotall为false)。
*-该符号前面的字符,匹配0次或多次。
+-该符号前面的字符,匹配1次或多次
?-该符号前面的字符是可选的。匹配0次或1次。
\d-匹配任何单个数字。
\w-匹配任何一个字符(包括字母数字以及下划线)。
[XYZ]-匹配字符组中的任意一个字符,即X、Y、Z中的任意一个。
[XYZ]+-匹配字符组中的一个或多个字符。
$-匹配字符串结束的位置。
^-匹配字符串开始的位置。
[^a-z]-当出现在字符类中时,^表示NOT(非);对于该示例,表示匹配任何非小写字母。
很闷吧,不过还是记住它们,记住之后你会知道好处的。
工具
你认为一个表达式是正确的,非常正确,但就是无法得到想要的结果,这时你可能会产生将头发拔光的冲动。去下载RegExr桌面应用程序吧,这个对你是必不可少的,而且玩起来非常有趣的。它提供实时检查,还有一个侧边栏,里面包含了每个字符的定义和用户,非常详细。
第二节:正则表达式傻瓜教程:抓屏视频
下一步是学习如何真正地使用这些符号。如果视频是你的偏好,那你走运了。这里有五个课程的视频教程,非常适合你:正则表达式傻瓜教程。
(Jeffery Way:在这一系列视频教程中,我将交给你如何在JavaScript和PHP中高效的使用正则表达式。我会假设你是从零开始。)
第三节:正则表达式和JavaScript
本节为最后一节,我们来看看JavaScript方法如何使用正则表达式。
1.Test()
这个方法接受单个字符串参数,然后返回一个布尔值,该值表明是否找到一个批评。如果你不需要对特定的匹配结果进行操作,比如,验证用户名,test方法已足够完成这个任务。
示例
var username=JohnSmith;alert(/[A-Za-z_-]+/.test(username));//returns true在上面的代码中,我们首先声明一个正则表达式,表示仅允许大写或小写字母、下划线和连字符。将这些可接受的字符放在括号中,就指定了一个字符组。紧随其后的+号表示我们想要正在寻找的是一个或多个前述字符组中的字符。然后使用该范式对变量JohnSmith进行测试。由于存在匹配,浏览器的显示框中将显示true。
2.Split()
你可能对split方法已经很熟了。该方法接受单个正规表达式,表示在哪里进行分割。请注意,如果喜欢,你还可以使用字符串。
var str=this is my string;alert(str.split(/\s/));//alertsthis,is,my,string上面代码中的\s表示单个空格,通过它,我们将字符串分割为一个数组。如果想要访问某个特定的值,使用相应的索引即可。
var str=this is my this string;alert(str.split(/\s/)[3]);//alertsstring3.replace()
可能你已经想到了,replace方法可以用来将文本中的一部分(由字符串或正则表达式表示)替换为不同的字符串。
示例
如果想要将Hello,World改为Hello,Universe,可以使用下面的代码:
var someString=Hello,World;someString=someString.replace(/World/,Universe);alert(someString);//alertsHello,Universe应留意的是,对于这个简单的示例,我们本来可以简单的使用.replace(World,Universe)。另外,使用replace方法不会自动重写变量的值,我们必须将返回值再次分配给这个变量:someString。
示例2
再举一个例子,假设用户要在我们的网站注册一个账号,我们可能想要提供一些基础的安全预防措施。也许我们想要留下他们的用户名,而删除其他任何符号,引号、分号等等。对于JavaScript和正则表达式,执行这类任务是桩琐碎的小事情。
var username=J;ohnSmith;@%;user
原创力文档


文档评论(0)