专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »软件测试 » 正则表达式学习:正则表达式基础学习 »正文

正则表达式学习:正则表达式基础学习

来源: 发布时间:星期六, 2008年12月13日 浏览:16次 评论:0
我们来看下正则表达式形式:

  /love/

  其中位于“/”定界符的间部分就是将要在目标对象中进行匹配模式用户只要把希望查找匹配对象模式内容放入“/”定界符的间即可为了能够使用户更加灵活定制模式内容正则表达式提供了专门“元所谓元就是指那些在正则表达式中具有特殊意义专用可以用来规定其前导(即位于元前面)在目标对象中出现模式

  较为常用包括:“+”“*”以及“?”其中“+”元规定其前导必须在目标对象中连续出现次或多次“*”元规定其前导必须在目标对象中出现零次或连续多次而“?”元规定其前导对象必须在目标对象中连续出现零次或

  下面就让我们来看下正则表达式元具体应用

  /fo+/

  上述正则表达式中包含“+”元表示可以和目标对象中“fool”,“fo”,或者“football”等在字母f后面连续出现个或多个字母o串相匹配

  /eg*/

  上述正则表达式中包含“*”元表示可以和目标对象中“easy”,“ego”,或者“egg”等在字母e后面连续出现零个或多个字母g串相匹配

  /Wil?/

  上述正则表达式中包含“?”元表示可以和目标对象中“Win”,或者“Wilson”,等在字母i后面连续出现零个或个字母l串相匹配

  除了元的外用户还可以精确指定模式在匹配对象中出现频率例如

  /jim{2,6}/

  上述正则表达式规定m可以在匹配对象中连续出现2-6次因此上述正则表达式可以同jimmy或jimmmmmy等串相匹配

  在对如何使用正则表达式有了初步了解的后我们来看下其它几个重要使用方式

  \\s:用于匹配单个空格符包括tab键和换行符;

  \\S:用于匹配除单个空格符的外所有

  \\d:用于匹配从0到9数字;

  \\w:用于匹配字母数字或下划线

  \\W:用于匹配所有和\\w不匹配

  .:用于匹配除换行符的外所有

  (介绍说明:我们可以把\\s和\\S以及\\w和\\W看作互为逆运算)

  下面我们就通过例子看下如何在正则表达式中使用上述元

  /\\s+/

  上述正则表达式可以用于匹配目标对象中个或多个空格

  /\\d000/

  如果我们手中有份复杂财务报表那么我们可以通过上述正则表达式轻而易举查找到所有总额达千元款项 [Page]

  除了我们以上所介绍的外正则表达式中还具有另外种较为独特专用即定位符定位符用于规定匹配模式在目标对象中出现位置

  较为常用定位符包括:“^”,“$”,“\\b”以及“\\B”其中“^”定位符规定匹配模式必须出现在目标开头“$”定位符规定匹配模式必须出现在目标对象结尾\\b定位符规定匹配模式必须出现在目标开头或结尾两个边界的而“\\B”定位符则规定匹配对象必须位于目标开头和结尾两个边界的内即匹配对象既不能作为目标开头也不能作为目标结尾同样我们也可以把“^”和“$”以及“\\b”和“\\B”看作是互为逆运算两组定位符举例来说:

  /^hell/

  上述正则表达式中包含“^”定位符所以可以和目标对象中以“hell”,“hello”或“hellhound”开头串相匹配

  /ar$/

  上述正则表达式中包含“$”定位符所以可以和目标对象中以“car”,“bar”或“ar”结尾串相匹配

  /\\bbom/

  上述正则表达式模式以“\\b”定位符开头所以可以和目标对象中以“bomb”,或“bom”开头串相匹配

  /man\\b/

  上述正则表达式模式以“\\b”定位符结尾所以可以和目标对象中以“human”,“woman”或“man”结尾串相匹配

  为了能够方便用户更加灵活设定匹配模式正则表达式允许使用者在匹配模式中指定某个范围而不局限于具体例如:

  /[A-Z]/

  上述正则表达式将会和从A到Z范围内任何个大写字母相匹配

  /[a-z]/

  上述正则表达式将会和从a到z范围内任何个小写字母相匹配

  /[0-9]/

  上述正则表达式将会和从0到9范围内任何个数字相匹配

  /([a-z][A-Z][0-9])+/

  上述正则表达式将会和任何由字母和数字组成如“aB0”等相匹配这里需要提醒用户注意点就是可以在正则表达式中使用“”把串组合在”符号包含内容必须同时出现在目标对象中因此上述正则表达式将无法和诸如“abc”等串匹配“abc”中最后为字母而非数字整理发布

相关文章

读者评论

  • 共0条 分0页

发表评论

  • 昵称:
  • 内容: