Ruby RegEx для совпадения.а также : - PullRequest
0 голосов
/ 21 декабря 2010

У меня есть эта строка: "51. кое-что:"и хотел бы извлечь только "некоторую вещь", используя reg ex в ruby.Может ли кто-нибудь указать мне в правильном направлении, чтобы соответствовать между.а а: а все остальное выбросить?

Ответы [ 2 ]

1 голос
/ 21 декабря 2010
'51. some thing:'.sub /.*\. *([^:]*).*/, '\1'
=> "some thing"
1 голос
/ 21 декабря 2010

Это должно сделать это:

(?<=\.).+?(?=:)

Если вы хотите избежать пробелов в начале и в конце, вы можете использовать это:

(?<=\.\s*)\S.*?(?=\s*:)

Редактировать: Я только что проверил и заметил, что Ruby не поддерживает lookbehind, который используется здесь.В качестве альтернативы, вы можете использовать это и взять в результате регулярное выражение:

\.\s*(\S.*?)\s*:
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...