加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP正则表达式显示问题

发布时间:2020-12-13 17:06:46 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试创建一个用于对书籍标题进行排序的字段,该字段删除了主要的“A,An,The”,并在逗号和空格之后将其附加到强者.因此“道路”将成为“道路” 听起来很简单,但是下面的代码中有一些东西会导致IE(没有其他浏览器)吐出大量的乱码. $node_field[0]['value'
我正在尝试创建一个用于对书籍标题进行排序的字段,该字段删除了主要的“A,An,The”,并在逗号和空格之后将其附加到强者.因此“道路”将成为“道路”

听起来很简单,但是下面的代码中有一些东西会导致IE(没有其他浏览器)吐出大量的乱码.

$node_field[0]['value'] = preg_replace(
     '/^(A|An|The|a|an|the) (.*)/',"$2x00,$1",$node->title
 );

解决方法

你应该使用更像的东西

$node_field[0]['value'] = preg_replace(
 '/^(A|An|The) (.*)/i',"$2,$node->title
);

如果我理解正确,哪个应该改变任何“A ……”,“An …”或“The ……”改为“……,A”,“……,An”和“……,“分别.

在正则表达式模式中的斜杠之后的i使其不区分大小写,它应该捕获A,An或The的所有版本.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读