我不知道如何做到以下几点:
找到'/\s[2-9]\)/'
的所有实例,并用<br />
标记替换该空格
像这样简单的东西不起作用:
$preg_num = ' /\s[2-9]\)/';
$preg_fix = "'/<br>/[2-9]\)'";
preg_replace($preg_num,$preg_fix,$notes);
我需要将$ preg_fix变量更改为?
答案 0 :(得分:3)
使用前瞻比后向引用更简单,恕我直言。
$preg_num = '/\s(?=[2-9]\))/';
$preg_fix = '<br/>';
preg_replace($preg_num,$preg_fix,$notes);
这样,您只需用<br/>
替换空格。
答案 1 :(得分:2)
替换字符串不被视为正则表达式 - 它更像是文字字符串。如果您尝试将原始正则表达式中匹配的任何数字[2-9]
放入替换字符串中,请将该字符作为一组捕获并使用反向引用。
$preg_num = '/\s([2-9])\)/';
$preg_fix = "<br />$1)'";
preg_replace($preg_num,$preg_fix,$notes);
了解更多信息: