sed正则的扩展与非扩展区别
sed的正则表达式,有扩展正则与基本正则(或叫非扩展正则)之分,默认非扩展。两者区别主要是对几个特殊字符的定义上:即 问号‘?’,加号 ‘+’, 圆括号‘()’, 花括号‘{}’, 竖线管道符 ‘|’
这是个坑,尤其对习惯使用扩展正则语法的用户而言。
我们一般用的是 GNU 的 sed[……]
这是fengyqf的博客
sed的正则表达式,有扩展正则与基本正则(或叫非扩展正则)之分,默认非扩展。两者区别主要是对几个特殊字符的定义上:即 问号‘?’,加号 ‘+’, 圆括号‘()’, 花括号‘{}’, 竖线管道符 ‘|’
这是个坑,尤其对习惯使用扩展正则语法的用户而言。
我们一般用的是 GNU 的 sed[……]
先上代码
regexp_replace("source_html",'\s*(<[^>]+>|<script.+?<\/script>|<style.+?<\/style>)\s*','','gi')
作用,使用regexp_replace函[……]
”删除字符串中所有html标记[……]
UE默认使用UltraEdit正则表达式,就是UE自己改造过的正则语法,跟常用的perl兼容正则表达式语法不一致,所以即使写对了正则表达式,还会显示“查询的字符串未找到”。
这就需要修改UE的正则引擎为Perl引擎,方法如下:
在crtl+f,在“查找”对话框里点右下角的“高级”按钮,下面长出来部分的“[……]