У меня возникла проблема с анализом некоторых полей из следующего регулярного выражения, которое я загрузил в rubular. Строка, которую я обрабатываю, является специальным заголовком из баннера FTP-сервера. Для того, чтобы я обработать этот баннер, линияАнализ нескольких групп из регулярного выражения
special:pTXT1TOCAPTURE^:mTXT2TOCAPTURE^:uTXT3TOCAPTURE^
Я думал, что: (?i)^special(:[pmu](.*?)\^)?*
будет делать трюк, однако, к сожалению, это только дает мне последний матч и я не знаю, почему, как я лениво пытается захватить каждая группа. Также обратите внимание, что я должен быть в состоянии захватить пустую строку также, т.е. если для экс строка матча содержит: и^
Wrap слова Показать невидимки рубинового версия результата матча: специального: pTXT1TOMATCH ^: mTXT2TOMATCH ^: uTXT3TOMATCH^ Матч группы:
- : uTXT3TOMATCH^
- TXT3TOMATCH
идея заключается в том, что строка должна начинаться с теста 'специальный' с последующим до 3 са группы pture, ограниченные p, m или лень, до следующего символа ^. Мне нужно зафиксировать текст, указанный выше - в основном мне нужно найти TXT1TOCAPTURE, TXT2TOCAPTURE и TXT3TOCAPTURE. Должна быть хотя бы одна из этих трех групп захвата.
Заранее спасибо
Если рубин то, что PCRE тег? – revo
Фактически выражение должно быть совместимо с pcre - фактическая среда выполнения использует pcre на моем компьютере. Я должен был это ясно понять. – johnco3