我的xml中出现了以下文本:
版权所有©2015.
我正在尝试使用正则表达式动态更改上面的文本,以便始终反映最终输出中的当前年份.这是我的尝试,它似乎不起作用:
$finaloutput = preg_replace("/Copyright © [0-9]+/", "test", $finaloutput);
当然,我正在使用硬编码字符串("测试")仅用于测试目的,因为当前的文本已经有2015年.所以,我的目标是改变这个:
版权所有©2015.保留所有权利....
进入这个:
版权所有©测试.版权所有....
我的正则表达式错了吗?
PS:只是为了让每个人都更好地了解上下文,这里的(一部分)XML片段$finaloutput
被分配给:
Powered by Collins Complete Spanish Electronic Dictionary
Copyright © 2015 HarperCollins Publishers Limited.
更新:我尝试了@Avinash提供的答案,但仍未能使其正常工作.为了更好地说明问题,我挖出了一个在线preg_replace()
测试人员.它结束于https://www.functions-online.com/preg_replace.html.以下是我在各种输入字段中输入的用于测试的信息:
$ pattern:'/(Copyright\s+©\s+)[0-9]+/u'
$替换:'\1test'
$ subject:
Copyright © 2015 HarperCollins Publishers Limited.
u
每当您处理unicode字符时添加修饰符.
$finaloutput = preg_replace('/(Copyright\s+©\s+)[0-9]+/u', '\1test', $finaloutput);