Как сделать RegEx для замены любых доменов на строку?
Приветствую. Есть задача - заменить в строке все домены на другую строку, а так-же если нашелся домен - возвратить true. Как это сделать? Регулярки из базы не помогут тут, а сам я в них полнейший ноль и все мои попытки что-либо понять были безуспешные)
А остальная часть строки что там? Просто либо придется пройтись циклом по доменам которые надо заменить (тогда будет наименьшая вероятность зацепить что-то лишнее), либо все таки найти какую-то общую маску (Например: абсолютно все они начинаются на http://) чтобы не потянуть за собой еще что-то.
Попробуйте хорошо определить ограничения/правила, какой может быть строка которую не надо заменять, а каким должны быть те куски, что требует изменений.
Регулярки, это конечно магия, но не та технология что обладает исскуственным интеллектом, опредять вместо человека когда нужно сработать, а когда нет.
И еще было бы неплохо опрелить, возможно, если домен всегда заканчивается на определенных доменах: типа только com, ru или ua и взять за условие чтобы именно такие проходили.
Alex_Wells: Тогда главное чтобы не было текста вида как я написал. Иначе в регулярке он тоже отсеится. Если такой вариант возможно часто будет, стоит забыть наверное про вырезание регуляркой, и составлять лист тех на которые нужно обратить внимания своими глазками, а от этих данных составлять список уже того что нужно вырезать, тут уже без регулярки.
Не забывайте ссылки могут быть и такие http://суши.рф/ (не реклама, домен не занят)
То-есть составить список возможных доменов и тогда уже вырезать их? А можно сделать так, что если регулярка думает что это домен - вырезать только если там имеется "CSGO"? При этом еще и обычную, и к тому-же надо пропускать один домен, то-есть свой домен не вырезать..