美文网首页
正则表达式

正则表达式

作者: 嘉期几许 | 来源:发表于2022-09-14 16:18 被阅读0次
    1. 括号
      []
      {}
      ()


      image.png
    2. 匹配次数符号
      问号?表示0次或者是1次,因为这是一个生存或是毁灭的问题
      加号+表示1次或者多次,把加号和1联系起来,用医(1)院来记忆
      星号*表示0次或者多次,把星号和零联系起来,用零(0)星来记忆

    这样我们就得到了六种表示重复次数的方法

    图片
    1. 转义
      这个有点特别,有没有想过,如果一个字符串出现以下的符号,该怎么匹配
    '
    *
    ?
    +
    |
    

    这些字符我们都已经碰到过,他们比较特别,因为他们除了字符串本身外,还有其他意义,称为元字符。正常情况下出现的时候都是特殊意义,如果想要他代表字符本身的意思,比如点号.就代表点号,就需要给他转义,转义的符号是斜杠\,那么点号就应该写作.。

    但是,说话就怕但是,这里的斜杠\也属于元字符,需要另外一个斜杠来转义,那么在R语言中,如果想要表示匹配点号本身,就应该是这个样子的\.,也就是说R语言里面的转义是两个斜杠\, \在R语言中算一个字符。

    那么如果特殊一点我要匹配一对括号怎么办?括号也是元字符,那就得转义\(\)
    如果要匹配两个//,那就应该写成\/\/,十分有趣吧?

    1. 提取括号里面的内容且不要括号
    library(stringr)
    string1 = GPL23159_anno1$name
    GPL23159_anno1$name<-str_extract(string1,"(?<=\\().+?(?=\\))")
    

    相关文章

      网友评论

          本文标题:正则表达式

          本文链接:https://www.haomeiwen.com/subject/yhovnltx.html