2013-05-28 3 views
-4

Проблемы с пониманием регулярных выражений.
Как вы пишете регулярные выражения, которые находят:Устранение неполадок регулярного выражения в Vim

  1. Все вхождения <digit>:<digit>
  2. дробей
  3. Все вхождения только буквы, цифры и пробелы между скобкой
  4. Даты в виде , dddd где d является цифра и может иметь 0 или более пробелов между , и цифрами
  5. Два разных регулярных выражения, чтобы найти все слова с mm в них
  6. Все вхождения mm или nn с последующим строчной гласной

Где хороший источник, чтобы узнать о регулярных выражениях?

+3

Regexes вообще [здесь] (http://www.regular-expressions.info/reference.html). В частности, для vim [здесь] (http://vimregex.com/). – ajp15243

+0

Элементы в вашем списке (2-6) - '&&' или '||' или они 5 разных вещей? Пожалуйста, сделайте пример, какой у вас есть вклад и чего вы хотите получить. некоторые из них не подходят для регулярного выражения. например 2) – Kent

+2

Это немного пахнет домашним заданием ... – jahroy

ответ

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 
    

    или ...

    m\{2} 
    
  6. все вхождения «мм» или «пп», а затем строчной гласной

    \(mm\|nn\)[aeiou] 
    
0

Для изучения регулярных выражений я могу искренне рекомендовать RegexOne!

Он проведет вас по основам регулярного выражения, предоставив вам камни здания, прежде чем приступать к их объединению, чтобы вы могли создавать эти длинные и на первый взгляд несколько загадочные регулярные выражения.

Имейте в виду, что стиль регулярных выражений, используемый в Vim, немного отличается, например, как используются группы \(<match>\) и экранированные по умолчанию символы. Но это все легко, когда вы знаете основы регулярного выражения и, как говорят, похожи на велосипед. Это не сложно учиться ездить на новом велосипеде, как только вы уже знаете, кататься на велосипеде.

+0

Спасибо. Этот сайт полезен. Я проработаю эти примеры. – user2430361

Смежные вопросы