很多站长朋友们都不太清楚php正则忽略换行,今天小编就来给大家整理php正则忽略换行,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php用正则如何去掉以下style标签里面的空格和换行 2、 php正则表达式怎样去掉换行符\r\n 3、 php 正则 匹配换行符的问题 4、 php 如何去除回车换行符 5、 php正则表达式匹配一段中文,中间有换行,空白,应该怎么写 6、 php正则,去掉除html标签外的所有空格/换行符等特殊字符?注:html标签内可能会有属性 php用正则如何去掉以下style标签里面的空格和换行<?php
$str='<style>*
{
margin:0;
padding:0;
border:0;
}
body
{
font-family:Verdana, Arial, "宋体";
font-size:12px;
}
strong
{
font-family:"微软雅黑";
font-size:14px;
color:#000;
font-weight:800;
}</style><html>xxxxxx</html><script>var xxxxxx=0;</script>';
$str = preg_replace_callback('/(<style>.*?<\/style>)/is', function($matched){
return preg_replace('/[\s\n]+/is', '', $matched[1]);
}, $str);
echo $str;
exit;
php正则表达式怎样去掉换行符\r\n正则表达式用 "/\r\n/"即可,如
echo preg_replace("/\r\n/",'',$str);
如果只是替换"\r\n",可以用 str_replace函数,效率更高些
php 正则 匹配换行符的问题“.”在正则里确实是不会匹配换行符的。
说它是通配符,有点名不符实。
如果你想要匹配包括换行符的所有字符的话,就用类似:[\w\W]或者[\s\S]这样的“全通配模式”;
你以上的代码,写成如下样式,就OK了:
$str="<div>你好
111
</div>";
$reg="/<div>([\w\W]*?)<\/div>/";
preg_match_all($reg,$str,$str_arr);
var_dump($str_arr);
正则是一门不大不小的学问,需要下一定的功夫在它身上。
php 如何去除回车换行符php 去除回车换行符有三种方案:
<?php
//php 不同系统的换行
//不同系统之间换行的实现是不一样的
//linux 与unix中用 \n
//MAC 用 \r
//window 为了体现与linux不同 则是 \r\n
//所以在不同平台上 实现方法就不一样
//php 有三种方法来解决
//1、使用str_replace 来替换换行
$str = str_replace(array("\r\n", "\r", "\n"), "", $str);
//2、使用正则替换
$str = preg_replace('//s*/', '', $str);
//3、使用php定义好的变量 (建议使用)
$str = str_replace(PHP_EOL, '', $str);
?>
php正则表达式匹配一段中文,中间有换行,空白,应该怎么写有多种处理方法:
1、使用[\s\S]匹配任意字符,而不是使用“.”
2、使用s单行修饰模式,例:$pattern = '#abc.*?def#s'; //能匹配abc换行def
3、使用\s*匹配换行和空格,php里\s能匹配空白字符,含换行
php里的中文使用 [\x7f-\xff]表示,因此,使用正则:
$pattern = '#[\x7f-\xff]+(?:\s*[\x7f-\xff]+)*#'; 即可
php正则,去掉除html标签外的所有空格/换行符等特殊字符?注:html标签内可能会有属性你是要压缩代码吧?
/**
* 压缩html : 清除换行符,清除制表符,去掉注释标记
* @param $string
* @return 压缩后的$string
* */
function compress_html($string) {
$string = str_replace("\r\n", '', $string); //清除换行符
$string = str_replace("\n", '', $string); //清除换行符
$string = str_replace("\t", '', $string); //清除制表符
$pattern = array (
"/> *([^ ]*) *</", //去掉注释标记
"/[\s]+/",
"/<!--[^!]*-->/",
"/\" /",
"/ \"/",
"'/\*[^*]*\*/'"
);
$replace = array (
">\\1<",
" ",
"",
"\"",
"\"",
""
);
return preg_replace($pattern, $replace, $string);
}
关于php正则忽略换行的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php正则忽略换行 php正则转义的详细内容...