Как бы один полоску текста до и после определенного тега HTML - PullRequest
3 голосов
/ 11 июля 2011

В основном, я хочу взять что-то вроде:

textheretextheretexthere
<table>
<tr><td>heres some stuff</td><td>and some morestuff</td></tr>
</table>
moretextheremoretexthere

и удалить весь текст здесь и далее, просто оставив таблицу

Ответы [ 3 ]

1 голос
/ 11 июля 2011

Вам нужно найти <table> позицию с помощью strpos, а затем использовать substr, чтобы удалить текст до этой точки. И то же самое для </table>

$string = 'textheretextheretexthere<table><tr><td>heres some stuff</td><td>and some morestuff</td></tr></table>moretextheremoretexthere';

$table_pos = strpos($string,'<table>');
$string = substr($string,$table_pos);
//Your string now is <table><tr><td>heres some stuff</td><td>and some morestuff</td></tr></table>moretextheremoretexthere

$endtable_pos = strpos($string,'</table>')+8;//added 8 so i wont exclude </table>
$clean_string = substr($string,0,$endtable_pos);
//Your string now is <table><tr><td>heres some stuff</td><td>and some morestuff</td></tr></table>

Конечно,Совсем не идеально, я знаю, но вы получили подсказку, вы можете поработать над ее улучшением и, возможно, в конечном итоге получить функцию, которая поможет вам решить вашу проблему.1013 *

субстрат
0 голосов
/ 11 июля 2011

Это был бы самый простой способ.

http://yelotofu.com/2008/08/jquery-outerhtml/

0 голосов
/ 11 июля 2011
<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';    

echo strip_tags($text);
echo "\n";

// Allow <p> and <a>
echo strip_tags($text, '<p><a>');
?>
...