В настоящее время я работаю над функцией, которая принимает в качестве аргументов список ключевых слов и строку (строку looong), и я хочу, чтобы она возвращала список каждого сопоставленного ключевого слова. Проблема в том, что ключевое слово может быть в 2 слова. Для Exemple - keyword1 : foobar
, keyword2 : foo bar
, keyword3 : barfoo
)Соответствие простому ключевому слову и ключевому слову с пробелами
строка:
hi this is foobar, have you seen my foo bar, he is very fooBar ?
я хочу список с (foobar
, foo bar
);
На данный момент я получил:
@matches = $string =~ m/\b(?:foobar|foo bar)\b/gi ;
Это прекрасно работает для простых слов, но не в составе слова:/
любая идея?
Благодарим за помощь.
Что вы имеете в виду составленными словами? – fugu
с пробелом, как «foo bar», я хочу, чтобы это было одно ключевое слово. Я имею в виду, что я должен сделать это как можно быстрее, что означает прокрутку строки только один раз. – user2806258
Можете ли вы привести мне пример того, что вы не хотите сравнивать? – fugu