码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式

时间:2015-08-21 13:26:47      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:

1. 使用正则表达式取出text="type:FULL|"中的"FULL",使用如下正则表达式方法。

new Regex(@"(?<=type:)[\s]+?(?=|)").Match(text).Value

2.使用正则表达式取出text="type:1234|12|234"中的"12",使用如下正则表达式方法。

new Regex(@"(\d{4})|(\d{2})|(\d{3})").Match(text).NextMatch().Value;

 

https://msdn.microsoft.com/zh-cn/library/ae5bf541%28VS.80%29.aspx

 

(pattern)

匹配 pattern 并捕获该匹配的子表达式。可以使用 $0…$9 属性从结果“匹配”集合中检索捕获的匹配。若要匹配括号字符 ( ),请使用“\(”或者“\)”。

(?:pattern)

匹配 pattern 但不捕获该匹配的子表达式,即它是一个非捕获匹配,不存储供以后使用的匹配。这对于用“or”字符 (|) 组合模式部件的情况很有用。例如,‘industr(?:y|ies) 是比 ‘industry|industries‘ 更经济的表达式。

(?=pattern)

执行正向预测先行搜索的子表达式,该表达式匹配处于匹配 pattern 的字符串的起始点的字符串。它是一个非捕获匹配,即不能捕获供以后使用的匹配。例如,‘Windows (?=95|98|NT|2000)‘ 匹配“Windows 2000”中的“Windows”,但不匹配“Windows 3.1”中的“Windows”。预测先行不占用字符,即发生匹配后,下一匹配的搜索紧随上一匹配之后,而不是在组成预测先行的字符后。

(?!pattern)

执行反向预测先行搜索的子表达式,该表达式匹配不处于匹配 pattern 的字符串的起始点的搜索字符串。它是一个非捕获匹配,即不能捕获供以后使用的匹配。例如,‘Windows (?!95|98|NT|2000)‘ 匹配“Windows 3.1”中的 “Windows”,但不匹配“Windows 2000”中的“Windows”。预测先行不占用字符,即发生匹配后,下一匹配的搜索紧随上一匹配之后,而不是在组成预测先行的字符后。

正则表达式

标签:

原文地址:http://www.cnblogs.com/ahua1188/p/4747305.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!