Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果介于<;预处理>;标签替换所有<;与&;书信电报;_Php_Regex_Expression - Fatal编程技术网

Php 如果介于<;预处理>;标签替换所有<;与&;书信电报;

Php 如果介于<;预处理>;标签替换所有<;与&;书信电报;,php,regex,expression,Php,Regex,Expression,我想替换所有的,只需对这些字符进行编码 i、 e echo”“。htmlspecialchars($content)。""; 编辑 正如作者认为改变问题的主旨是合适的 用于将字符串拆分并根据需要应用htmlspecialchars 我建议使用正则表达式,这是我永远不会做的事情,但如果需要,这里有一种方法: $text=” 姓,名 ,菲利普 卡戴珊,金 墨丘利,弗雷迪 adgrgws,apvoih asvpaiovjas aspvojas ass0voj 姓2,名 ,菲利普 卡戴珊,金 墨丘利,

我想替换所有的
,只需对这些字符进行编码

i、 e

echo”“。htmlspecialchars($content)。"";
编辑

正如作者认为改变问题的主旨是合适的

用于将字符串拆分并根据需要应用
htmlspecialchars


我建议使用正则表达式,这是我永远不会做的事情,但如果需要,这里有一种方法:

$text=”
姓,名
,菲利普
卡戴珊,金
墨丘利,弗雷迪
adgrgws,apvoih
asvpaiovjas aspvojas ass0voj
姓2,名
,菲利普
卡戴珊,金
墨丘利,弗雷迪
";
preg#u match#u all(“#\(.+?)\#s“,$text,$out);
var_dump($out[1]);
foreach($out[1]作为和$val){

$val=str_replace('如果没有嵌套的
no,您就不会这样做。您永远不会用正则表达式破坏html。使用DOM。一旦您隔离了pre的“innerhtml”,那么您就可以
htmlspecialchars()
并将该代码段重新插入dom。@MarcB请参见更新Mate您的问题根本不可能。什么是
abc
意思?您应该使用标记。
preg_replace('\(<pre>)[<](<\/pre>)\', '&lt;', $content);
 echo "<pre>" . htmlspecialchars($content) . "</pre>";
$text = "<pre>
last_name, first_name
<bjorge>, philip
kardashian, kim
mercury, freddie
</pre>
adgrgws, apvoih
asvpaiovjas aspvojas ass0voj
<pre>
last_name2, first_name
<bjorge>, philip
kardashian, kim
mercury, freddie
</pre>";

preg_match_all("#\<pre\>(.+?)\<\/pre\>#s",$text,$out);

var_dump($out[1]);

foreach($out[1] as &$val){
$val = str_replace ( '<', '&lt;',$val);
}
var_dump($out[1]);
$str = "<pre>< left < arrow < <</pre>";

$pattern = '~<pre[^>]*>\K.*(?=</pre>)~Uis';

$str = preg_replace_callback($pattern, function ($m) {
         return str_replace("<", "&lt;", $m[0]);
       }, $str);

echo $str;