|
|
|
| Доброго времени суток, есть текст, нужно найти в нем выражения
[U RL=http://какойтосайт.какоятозона]какиетослова[/URL]
|
1 и заменить искомое выражение на пробел, какое рег. выражение тут подойдет?
2. можно ли составить такое выражение, которое заменяло бы все адреса, кроме списка исключений, например , кроме site1.ru, site2.com?
p.s.
пробела между U и R в искомом выражении нет. | |
|
|
|
|
|
|
|
для: ren
(30.03.2009 в 01:45)
| | 1:
<?
preg_match_all('/\[url\](.+?)\[\/url\]/', $text, $url1); // для ссылок вида [u rl]http://some.ru[/url]
for($i = 0; $i < count($url1[1]); $i++){
$url1[1][$i] = preg_replace('/^([^"]*)(.*)$/', '\1', $url1[1][$i]);
$text = str_replace($url1[0][$i], '<a href="'.$url1[1][$i].'" >'.$url1[1][$i].'</a>', $text);
}
preg_match_all('/\[url=(.+?)\](.+?)\[\/url\]/', $text, $url2); // для ссылок вида [u rl=http://some.ru]SOME[/url]
for($i = 0; $i < count($url2[1]); $i++){
$url2[1][$i] = preg_replace('/^([^"]*)(.*)$/', '\1', $url2[1][$i]);
$text = str_replace($url2[0][$i], '<a href="'.$url2[1][$i].'" >'.$url2[2][$i].'</a>', $text);
}
|
| |
|
|
|
|
|
|
|
для: ren
(30.03.2009 в 01:45)
| | 1 и заменить искомое выражение на пробел, какое рег. выражение тут подойдет?
$preg = preg_replace("#\[url.*\].*\[/url\]#i", "", $text);
|
| |
|
|
|