获取网页字符编码的正则表达式

来源:互联网 发布:js实现股票分时图代码 编辑:程序博客网 时间:2024/05/02 13:35
  1. $wcharset = preg_match("/<meta.+?charset=[^\w]?([-\w]+)/i",$filecnt,$temp) ? strtolower($temp[1]):"";  
  2. $wtitle = preg_match("/<title>(.*)<\/title>/isU",$filecnt,$temp) ? $temp[1]:""

这个网上的,还不是最好的。

 最完美的正则表达式是这样的:

preg_match('/<meta[^>]*?charset=(["\']?)([a-zA-z0-9\-\_]+)(\1)[^>]*?>/is', $html, $charset);

/<meta[^>]*?charset=(["\']?)([a-zA-z0-9\-\_]+)(\1)[^>]*?>/is
为什么说完美呢,看看图就知道了:

group2就是要取的值。

将meta中可能写入其它项都考虑到了,而且也考虑到可能有引号可能没有引号,可能是双引号也可能是单引号。


其实最牛的是这个可视化正则表达式检测。

网址为:https://jex.im/regulex/
通过它,发现找出html标签的最佳正则是

<([^>]+?)>


0 0
原创粉丝点击