我已经在数据库中保存了以前插入的数据,我需要提取一个片段来替换它,但是不管我做什么都不行,正则表达式是正确的,因为我已经在其他程序中试过了,请我需要帮助。
这是数据库中的文本
administrator/history_p/1/<?php echo base_url();?>articuls/Antes
我需要在包含此<?php echo base_url();?>
但是角色<>
并不想接受它们。
这是常规的表达
[^\s<>]*)<(\?php echo base_url\(\);\?>
这是代码
$regexp = preg_replace("([^\s<>]*)<(\?php echo base_url\(\);\?>)", 'HI', $field)
答案 0 :(得分:2)
你的正则表达式是正确的,但你必须添加分隔符:
$regexp = preg_replace("/([^\s<>]*)<(\?php echo base_url();\?>)/", 'HI', $field)
// here __^ and here __^
不需要使用捕获组,您必须转义括号:
$regexp = preg_replace("/[^\s<>]*<\?php echo base_url\(\);\?>/", 'HI', $field)
答案 1 :(得分:0)
对于您展示的数据,此正则表达式可用作魅力
.*>