0

我有一个包含 html 代码的 *.txt 文件。我想删除:

<textarea cols="100" rows="50" name="newcontent" id="newcontent">

</textarea>

我可以用这个删除第一个标签:

$content_replaced = preg_replace ("/<textarea cols=\"100\" rows=\"50\" name=\"newcontent\" id=\"newcontent\">/", "", $replace);

但也无法弄清楚如何替换 < /textarea> 。谢谢 :)

4

2 回答 2

0

尝试:

$content_replaced = preg_replace ("/<textarea cols=\"100\" rows=\"50\" name=\"newcontent\" id=\"newcontent\">.*?<\/textarea>/", "", $replace);

基本上,我只是添加了 .*? 到你的正则表达式。这将做的是它将“非贪婪地”匹配所有内容,直到下一个结束标记。

于 2013-08-27T19:48:07.877 回答
0

你可以试试这个正则表达式。这是示例。

$string = "sdfsd <textarea cols=\"100\" rows=\"50\" name=\"newcontent\" id=\"newcontent\"> some text here </textarea>";
$result  = preg_replace("/.*?>(.*)<.*?>$/","$1",$string);
echo $result;

这仅在您只有一个标签在行时才有效。

于 2013-08-27T20:03:34.663 回答