В таких случаях, я думаю, Perl-совместимое регулярное выражение (pcre) всегда лучший выбор.Почему, потому что вы будете использовать только (1) вызов функции / метода, а затем простой цикл для обработки результата.При использовании функций / методов строкового типа каждый раз, когда ваша $ needle находится в вашем $ haystack, вам нужно будет вызывать другую функцию / метод строкового типа для обработки следующего вхождения вашего $ needle, найденного в вашем $ haystack!