Ruby регулярное выражение, как исключить попадание из кавычек - PullRequest
0 голосов
/ 08 сентября 2018

Я сталкиваюсь с новой проблемой, как выбрать только одно слово ПАЦИЕНТ из моей строки-образца, поэтому мне нужно игнорировать, если оно буквально в одинарных кавычках и, если возможно, в единственном цикле. Это также должно быть только слово, и это уже решено с помощью переключателя \b. Попробовал почти все, что мог на rubular.com . ты думаешь это выполнимо Best.M

s = 'alpha \'patient\' #1 literal  PATIENT  and As  patieNT and patientXX '
regex=/\bpatient\b/i

regex =/(?<!['"])\bpatient\b(?!['"])/  ##!!!!  solved (c)  emsimpson92  

puts s.scan(regex)    # select only PATIENT only without qoutes

Обновлено: Я использую момент времени, чтобы решить другой случай, как пропустить случай, когда перед словом regex стоит As (но с 1+ пробелами), как я могу добавить условие 1 ore more space в свой Первая часть, я попробовал \s+, но это не работает здесь: (?<!as\s) (?<!['"])\bpatient\b ## `AS с 1+ пробелами

1 Ответ

0 голосов
/ 08 сентября 2018

Это должно дать вам то, что вы ищете. (?<!['"])patient(?!['"])

Демо

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