|
|
|
| Я вырезаю с сайта фразу,
Druid</TD></TR><T
Надо очистить все от этих тегов.. использую регулрное выражение.
preg_match("#(.*)(<\/)(.*)#i", $varvoc, $v);
Но он почему то обрезает только до
Druid</TD>
Не знаю почему :(
Вот код дял проверки:
<?php
$char = "Antilopa";
$link = "http://www.tibia.com/community/?subtopic=character&name=".urlencode($char);
$fd = fopen($link, "r");
$text="";
if (!$fd) echo "Сервер временно не доступен.";
else
{
while (!feof ($fd))
{
$text .= fgets($fd, 9000);
}
}
fclose ($fd);
$posvoc = strpos($text, "Profession:");
$varvoc = substr($text, $posvoc+20, 17);
echo "Voc1:".$varvoc."<br>";
$varvoc = preg_match("#(.*)(<\/)(<\/)(.*)#i", $varvoc, $v);
echo "Voc2:".$v[1]."<br>";
?>
|
| |
|
|
|
|
|
|
|
для: Бамси
(15.01.2007 в 17:46)
| | Попробуйте вместо preg_match использовать preg_match_all | |
|
|
|
|
|
|
|
для: ddhvvn
(15.01.2007 в 18:15)
| | Неа, не получается..
как я понял он выполняет это регулярку справа на лево, а надо что бы он выполнял ее с лева на право. | |
|
|
|
|
|
|
|
для: Бамси
(15.01.2007 в 18:44)
| | нет. он просто ищет ВСЕ соответствия, а preg_match - первое
P.S.: что-то странное у Вас выражение :-/ Скорее всего, дело в нем
Вопрос не очень понятен. Вам не подойдет функция strip_tags()? | |
|
|
|
|
|
|
|
для: ddhvvn
(15.01.2007 в 18:58)
| | со strip_tags() не работает - не знаю почему. | |
|
|
|
|
|
|
|
для: Бамси
(15.01.2007 в 17:46)
| | >> Почему не работает регулрное
Да собственно оно и не может работать :)
В имени может быть знак "<" ?
Если нет, то можно попробовать вот так:
- - - - - -
а, в коде почему-то другое выражение ... то, что наверху должно работать, если изменить жадность модификатором "U" | |
|
|
|