明天休息 發表於 2009-7-22 17:58:09

正则表达式的基本语法

正则表达式的基本语法 <br />  首先让我们看两个特殊的符号'^'和'$'。他们的作用是分别指出一个字符串的开始和结束。例子如下: <br />   <br />  &quot;^The&quot;:表示所有以&quot;The&quot;开始的字符串(&quot;There&quot;,&quot;The cat&quot;等); <br />  &quot;of despair$&quot;:表示所以以&quot;of despair&quot;结尾的字符串; <br />  &quot;^abc$&quot;:表示开始和结尾都是&quot;abc&quot;的字符串&mdash;&mdash;呵呵,只有&quot;abc&quot;自己了; <br />  &quot;notice&quot;:表示任何包含&quot;notice&quot;的字符串。 <br />   <br />  象最后那个例子,如果你不使用两个特殊字符,你就在表示要查找的串在被查找串的任意部分&mdash;&mdash;你并 <br />  不把它定位在某一个顶端。 <br />   <br />  其它还有'*','+'和'?'这三个符号,表示一个或一序列字符重复出现的次数。它们分别表示&ldquo;没有或 <br />  更多&rdquo;,&ldquo;一次或更多&rdquo;还有&ldquo;没有或一次&rdquo;。下面是几个例子: <br />   <br />  &quot;ab*&quot;:表示一个字符串有一个a后面跟着零个或若干个b。(&quot;a&quot;, &quot;ab&quot;, &quot;abbb&quot;,&hellip;&hellip;); <br />  &quot;ab+&quot;:表示一个字符串有一个a后面跟着至少一个b或者更多; <br />  &quot;ab?&quot;:表示一个字符串有一个a后面跟着零个或者一个b; <br />  &quot;a?b+$&quot;:表示在字符串的末尾有零个或一个a跟着一个或几个b。 <br />   <br />  你也可以使用范围,用大括号括起,用以表示重复次数的范围。 <br />   <br />  &quot;ab{2}&quot;:表示一个字符串有一个a跟着2个b(&quot;abb&quot;); <br />  &quot;ab{2,}&quot;:表示一个字符串有一个a跟着至少2个b; <br />  &quot;ab{3,5}&quot;:表示一个字符串有一个a跟着3到5个b。 <br />   <br />  请注意,你必须指定范围的下限(如:&quot;{0,2}&quot;而不是&quot;{,2}&quot;)。还有,你可能注意到了,'*','+'和 <br />  '?'相当于&quot;{0,}&quot;,&quot;{1,}&quot;和&quot;{0,1}&quot;。 <br />  还有一个'|',表示&ldquo;或&rdquo;操作: <br />   <br />  &quot;hi|hello&quot;:表示一个字符串里有&quot;hi&quot;或者&quot;hello&quot;; <br />  &quot;(b|cd)ef&quot;:表示&quot;bef&quot;或&quot;cdef&quot;; <br />  &quot;(a|b)*c&quot;:表示一串&quot;a&quot;&quot;b&quot;混合的字符串后面跟一个&quot;c&quot;; <br />   <br />  '.'可以替代任何字符: <br />   <br />  &quot;a.&quot;:表示一个字符串有一个&quot;a&quot;后面跟着一个任意字符和一个数字; <br />  &quot;^.{3}$&quot;:表示有任意三个字符的字符串(长度为3个字符); <br />   <br />  方括号表示某些字符允许在一个字符串中的某一特定位置出现: <br />   <br />  &quot;&quot;:表示一个字符串有一个&quot;a&quot;或&quot;b&quot;(相当于&quot;a|b&quot;); <br />  &quot;&quot;:表示一个字符串包含小写的'a'到'd'中的一个(相当于&quot;a|b|c|d&quot;或者&quot;&quot;); <br />  &quot;^&quot;:表示一个以字母开头的字符串; <br />  &quot;%&quot;:表示一个百分号前有一位的数字; <br />  &quot;,$&quot;:表示一个字符串以一个逗号后面跟着一个字母或数字结束。 <br />   <br />  你也可以在方括号里用'^'表示不希望出现的字符,'^'应在方括号里的第一位。(如:&quot;%[^a-zA-Z]%&quot;表 <br />  示两个百分号中不应该出现字母)。 <br />   <br />  为了逐字表达,你必须在&quot;^.$()|*+?{\&quot;这些字符前加上转移字符'\'。 <br />   <br />  请注意在方括号中,不需要转义字符。
頁: [1]
查看完整版本: 正则表达式的基本语法