young
Новичок
Разбиение строки по массиву паттернов
Попробую объяснить:
Есть массив паттернов, вида:
* http://www.
* https://www.
* .com
* .org
* www.
* blababla
* coolstring
Есть строка "cool string www.blax.com and som https://www.1.com"
Требуется разбить строку на вхождения паттернов и остальные части строки. Причем если подходят несколько паттернов - надо брать максимально длинный. На выходе для приведенной строки должно быть:
1) строка cool string
2) паттерн "www."
3) строка blax
4) паттерн ".com"
4) строка som
5) паттерн "https://www."
6) строка 1
7) паттерн ".com"
Единственное что приходит в голову: по цилку через strpos искать первое вхождение, обрабатывать его, отрезать, и опять по циклу через strpos искать следующее вхождение.
Может есть решение лучше?
Попробую объяснить:
Есть массив паттернов, вида:
* http://www.
* https://www.
* .com
* .org
* www.
* blababla
* coolstring
Есть строка "cool string www.blax.com and som https://www.1.com"
Требуется разбить строку на вхождения паттернов и остальные части строки. Причем если подходят несколько паттернов - надо брать максимально длинный. На выходе для приведенной строки должно быть:
1) строка cool string
2) паттерн "www."
3) строка blax
4) паттерн ".com"
4) строка som
5) паттерн "https://www."
6) строка 1
7) паттерн ".com"
Единственное что приходит в голову: по цилку через strpos искать первое вхождение, обрабатывать его, отрезать, и опять по циклу через strpos искать следующее вхождение.
Может есть решение лучше?