无法理解Vim中的正则表达式

时间:2013-05-28 22:17:22

标签: regex vim

无法理解正则表达式 你如何编写找到的正则表达式:

  1. 所有出现的<digit>:<digit>
  2. 级分
  3. 在括号之间仅出现字母,数字和空格
  4. , dddd形式的日期,d为数字,,和数字
  5. 之间可以有0个或更多空格
  6. 两个不同的正则表达式,用于查找其中包含mm的所有单词
  7. 所有出现的mmnn后跟小写元音
  8. 在哪里学习正则表达式是一个很好的资源?

2 个答案:

答案 0 :(得分:1)

有关一些解释,请参阅http://vimregex.com/,但以下是一些问题示例:

  1. 所有出现的<digit>:<digit>

    \d\+:\d\+
    
  2. 级分

    \d\+\/\d\+
    
  3. 括号内所有出现的字母,数字和空格

    ([a-zA-Z\d ]\+)
    
  4. 日期格式为“,dddd”,其中d为数字,且数字与数字之间可以有0或更多空格

    , *\d\{4}
    
  5. 两个不同的正则表达式,用于查找其中包含“mm”的所有单词

    mm
    

    ...或

    m\{2}
    
  6. 所有出现的&#39; mm&#39;或者&#39; nn&#39;然后是小写元音

    \(mm\|nn\)[aeiou]
    

答案 1 :(得分:0)

对于学习正则表达式,我可以全心全意地推荐RegexOne

它将引导您完成正则表达式的基础知识,在将它们添加到一起之前为您提供构建宝石,这样您就可以构建那些长而乍一看,有点神秘的正则表达式。

请记住,Vim中使用的正则表达式样式略有不同,例如如何使用组\(<match>\)和默认转义字符。但是当你知道正则表达式的基础知识时,这很容易,可以说就像骑自行车一样。一旦你知道骑自行车,学习骑新自行车并不困难。