Я хочу найти данное слово в строке текста с рубином - PullRequest
1 голос
/ 28 сентября 2010

Я хочу найти данное слово в строке текста с помощью регулярного выражения, но при поиске следует искать не только целое слово, но и случаи, когда слово является префиксом или суффиксом, или внутри других слов.Например (я не очень креативен с примерами ... но это должно понять):

Ищите green в "Я живу на вечнозеленой улице, потому что зеленый - это зеленый город с зелеными деревьями.green-latex $ green-оператор ^ 2 $ "

должен вернуть:

evergreen, green, greentown, tree-greenery, green-latex, $green-operator^2$

Ответы [ 2 ]

3 голосов
/ 28 сентября 2010

Метод сканирования работает. Шаблон ищет серию непробельных символов с зелеными буквами.

irb> s = "I live in evergreen street because " +
         "green is greentown with tree-greenery." +
         " I like green-latex $green-operator^2$"

irb> s.scan(/\S*green\S*/)
=> ["evergreen", "green", "greentown", 
    "tree-greenery.", "green-latex", 
    "$green-operator^2$"]
1 голос
/ 29 сентября 2010
irb> s = "I live in evergreen street because " +
irb*     "green is greentown with tree-greenery." +
irb*     " I like green-latex $green-operator^2$"

irb> s.split.grep /green/
=> ["evergreen", "green", "greentown", "tree-greenery.", "green-latex", "$green-operator^2$"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...