Jiangtang's profile技止于此BlogListsNetwork Tools Help

Blog


    2/24/2008

    SAS与Perl正则表达式(1):元字符

    基本元字符

    元字符 含义 举例
    /. . ./ 一个正则表达式的起止 position=prxMatch('/world/','Hello World')
    | 数项之间的一个选择,“或”运算 x|y匹配x或者y
    () 匹配组。标记一个子表达式的开始和结束位置。相关匹配将被缓存,供以后使用 比如,输入字符串为  abc1 dce2 fg,则 ([a-z]{3}\d) 将产生两次匹配,abc1和dce2

     

    匹配字符

    元字符 匹配的字符 举例 备注
    . 除换行符(newline)以外的任一字符   要匹配包括换行符的任一字符,使用模式[.\n]
    \w 任一单词字符,包括A-Z,a-z,0-9和下划线(underscore,_)   在英语中,等价于[A-Za-z0-9_]
    \W 任一非单词字符 \W可以匹配@ 在英语中,等价于[^A-Za-z0-9_]
    \s 任一空白字符,包括空格(space)、制表符(tab)、换行符、回车符、中文全角空格等   等价于[\f\n\r\t\v]
    \S 任一非空白字符   等价于[^\f\n\r\t\v]
    \d 0-9任一数字 \d\d可以匹配34 等价于[0-9]
    \D 任一非数字字符 \D\D\D可以匹配abc 等价于[^0-9]

     

    匹配字符组(class)

    元字符 匹配的字符 举例 备注
    [ . . .] 方括号里的任一字符    
    [^ . . .] 不在方括号里的任一字符    
    [a-z] 从a到z    
    [^a-z] 不在从a到z范围内的任一字符    

     

    定位字符(position matching)

    元字符 描述 举例 备注
    ^ 匹配输入字符串的开始位置   要匹配 ^ 字符本身,用 \^
    $ 匹配输入字符串的结尾位置   要匹配 $ 字符本身,用 \$。
    \b 描述单词的前或后边界    
    \B 表示非单词边界    

     

    重复字符(repetition matching)

    元字符 描述 举例 备注
    * 匹配前面的子表达式零次或多次 zo*可以匹配z或者zoo 要匹配 * 字符,用 \*;*等价于{0}
    + 匹配前面的子表达式一次或多次   要匹配 + 字符,用 \+;+等价于{1,}
    ? 匹配前面的子表达式零次或一次   要匹配 ? 字符,请使用 \?;?等价于{0,1}
    {n} 匹配前面的子表达式n次    
    {n,} 匹配前面的子表达式n次或以上    
    {n,m} 匹配前面的子表达式,至少n次,最多m次    

    *****************

      懒得整理了,更多更细致的资料见下:

    http://www.regular-expressions.info/  

    http://www.etc.edu.cn/blog/weiwei/archives/005132.html

    http://unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm

    http://edu.yesky.com/edupxpt/18/2143018.shtml  

    http://fineboy.cnblogs.com/archive/2005/09/08/232410.html

    http://www.williamlong.info/archives/433.html

    http://hedong.3322.org/archives/000244.html

    Technorati Tags:

    Comments (2)

    Please wait...
    Sorry, the comment you entered is too long. Please shorten it.
    You didn't enter anything. Please try again.
    Sorry, we can't add your comment right now. Please try again later.
    To add a comment, you need permission from your parent. Ask for permission
    Your parent has turned off comments.
    Sorry, we can't delete your comment right now. Please try again later.
    You've exceeded the maximum number of comments that can be left in one day. Please try again in 24 hours.
    Your account has had the ability to leave comments disabled because our systems indicate that you may be spamming other users. If you believe that your account has been disabled in error please contact Windows Live support.
    Complete the security check below to finish leaving your comment.
    The characters you type in the security check must match the characters in the picture or audio.

    To add a comment, sign in with your Windows Live ID (if you use Hotmail, Messenger, or Xbox LIVE, you have a Windows Live ID). Sign in


    Don't have a Windows Live ID? Sign up

    No namewrote:
    您需要二手液晶显示屏废旧液晶屏么?我们是不折不扣的二手液晶屏、旧液晶屏大批发商,长期大量供应可再利用的旧液晶屏。我公司提供的各种尺寸的二手液晶屏, 不同厚薄如笔记本屏,均已经过我们严格的分类,检验,测试流程。请访问协力液晶屏www.sceondhandlcd.com[ghfdjiaadhhfdfi]
    Nov. 21
    Nov. 9

    Trackbacks

    The trackback URL for this entry is:
    http://johnthu.spaces.live.com/blog/cns!2053CD511E6D5B1E!393.trak
    Weblogs that reference this entry
    • None