上一题下一题
跳转到
 
 
  世界如此多姿,发展如此迅速,窥一斑未必还能知全豹。但正如万花筒一样,每一个管窥都色彩斑斓。  
 
 
  知识通道 | 学习首页 | 教师首页 | PK首页 | 知识创造首页 | 企业首页 | 登录
 
本文对应知识领域
测试正则表达式
作者:deerchao 申领版权
2010年10月25日 共有 1770 次访问 【添加到收藏夹】 【我要附加题目
受欢迎度:

    测试正则表达式
     
     
    
    如果你不觉得正则表达式很难读写的
    话,要么你是一个天才,要么,你不是地 球人。正则表达式的语法很令人头疼,即 使对经常使用它的人来说也是如此。由于 难于读写,容易出错,所以找一种工具对 正则表达式进行测试是很有必要的。
    
     
    其它可用的测试工具:
     
    •   RegexBuddy
    •   Javascript正则表达式在线测试工具
    
    不同的环境下正则表达式的一些细节是不相同的,本教程介绍的是微软 .Net Framework 2.0下正则表达式的行为,所以,我向你介绍一个.Net下的工具Regex Tester。首先你确保已经安装了.Net Framework 2.0,然后下载Regex Tester。这是个绿 色软件,下载完后打开压缩包,直接运行RegexTester.exe就可以了。
    下面是Regex Tester运行时的截图:
    
     
    元字符
     
    现在你已经知道几个很有用的元字符了,如 \b , . , * ,还有 \d .正则表达式里还有 更多的元字符,比如 \s 匹配 任意的空白符,包括空格,制表符(Tab),换行符,中文 全角空格等 。 \w 匹配 字母或数字或下划线或汉字等
    下面来看看更多的例子:
    
    \ba\w*\b 匹配 以字母 a 开头的单 ——先是某个单词开始处( \b ),然 后是字母 a ,然后是任意数量的字母或 数字( \w* ),最后是单词结束处( \b )
    \d 匹配 1个或更多连续的数
     。这里的 是和 * 类似的元字符, 不同的是 * 匹配 重复任意次(可能是0 ) ,而 则匹配 重复1次或更多
     。
    
    对中文/汉字的特殊处理是由.Net提供
    的正则表达式引擎支持的,其它环境下的 具体情况请查看相关文档。
     
     
    好吧,现在我们说说正则表达式里的 单词是什么意思吧:就是不少于一个的连 续的 \w 。不错,这与学习英文时要背的成 千上万个同名的东西的确关系不大 :)
    
    \b\w{6}\b 匹配 刚好6个字符的单词 。 表1.常用的元字符
    代码             说明
    .        匹配除换行符以外的任意字符
    \w     匹配字母或数字或下划线或汉字
    \s      匹配任意的空白符
    \d     匹配数
    \b      匹配单词的开始或结束
    
     
    代码             说明
    ^       匹配字符串的开始
    $       匹配字符串的结束
    
    元字符 ^ (和数字6在同一个键 位上的符号)和 $ 都匹配一个位置, 这和 \b 有点类似。 ^ 匹配你要用来查 找的字符串的开头, $ 匹配结尾。这 两个代码在验证输入的内容时非常有 用,比如一个网站如果要求你填写的 QQ号必须为5位到12位数字时,可以 使用: ^\d{5,12}$ 。
    这里的 {5,12} 和前面介绍过的
    {2} 是类似的,只不过 {2} 匹配 只能
    
     
    正则表达式引擎通常会提供一个“测试 指定的字符串是否匹配一个正则表达式”的 方法,如JavaScript里的RegExp.test()方法 或.NET里的Regex.IsMatch()方法。这里的 匹配是指是字符串里有没有符合表达式规 则的部分。如果不使用 ^ 和 $ 的话,对于 \d
    {5,12} 而言,使用这样的方法就只能保证 字符串里 包含512连续位数字 ,而不是 整个字符串就是5到12位数字。
    
    不多不少重复2 , {5,12} 则是 重复的次数不能少于5次,不能多于12 ,否则都不 匹配。
    因为使用了 ^ 和 $ ,所以输入的整个字符串都要用来和 \d{5,12} 来匹配,也就是 说整个输入 必须是512个数字 ,因此如果输入的QQ号能匹配这个正则表达式的 话,那就符合要求了。
    和忽略大小写的选项类似,有些正则表达式处理工具还有一个处理多行的选项。 如果选中了这个选项, ^ 和 $ 的意义就变成了 匹配行的开始处和结束处

    

 

相关新闻

沃尔玛成功的得力工具
小故事:鼠与猫
Win32Asm及其编程工具和资源的介绍
正则表达式的更多应用
正则表达式中的贪婪与懒惰
正则表达式中的字符类
正则表达式中的元字符
正则表达式入门
FT中文网:谁来PK“百度局域网”

您可能对这些感兴趣  

《VB程序设计基础》选择题
设计模式之Iterator
设计模式之Visitor
设计模式之Interpreter(解释器)
设计模式之Mediator(中介者)
设计模式之Strategy(策略)
设计模式之State
设计模式之Command
设计模式之Chain of Responsibility(职责链)
设计模式之Observer

题目筛选器
日期:
类型:
状态:
得分: <=
分类:
作者:
职业:
关键字:
搜索

 
 
 
  焦点事件
 
  知识体系
 
  职业列表
 
 
  最热文章
 
 
  最多引用文章
 
 
  最新文章
 
 
 
 
网站介绍 | 广告服务 | 招聘信息 | 保护隐私权 | 免责条款 | 法律顾问 | 意见反馈
版权所有 不得转载
沪ICP备 10203777 号 联系电话:021-54428255
  帮助提示    
《我的太学》是一种全新的应用,您在操作中遇到疑问或者问题,请拨打电话13564659895,15921448526。
《我的太学》