Создание регулярного выражения для условного сопоставления ['Cat' (необязательно) Dog (. *?)] |['Кошка' (необязательно) (. *?) Собака] - PullRequest
0 голосов
/ 26 сентября 2019

Мне нужно построить этот тип регулярных выражений.

Например, у меня есть следующие варианты строки:

  • 'Cat Dog mystring'
  • 'Cat mystring Dog'
  • 'mystring Dog'

И мне всегда следует извлекать 'mystring' отсюда.Как мне справиться с этим?

Я пытался использовать ИЛИ сопоставление, но здесь это кажется слишком конфликтным = \

1 Ответ

0 голосов
/ 27 сентября 2019

^(?:Cat )?(?:Dog )?(.*?)(?: Dog)?$ извлечет вашу строку (какой бы она ни была) из ваших конкретных примеров.

  • ^ $ Между началом и концом строки ...
  • (?:Cat )? Совпадение Cat (необязательно)
  • (?:Dog )? Совпадение Dog (необязательно)
  • (.*?) Захват вашей строки
  • (?: Dog)? Совпадение Dog (необязательно)

Попробуйте здесь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...