PHP preg_replace 返回编译失败 : PCRE does not support

标签 php

我正在尝试将 preg_replace[^\\u0000-\\uFFFF] 一起使用 我不断得到

Compilation failed: PCRE does not support

我该怎么办?

最佳答案

PCRE 不支持 \uXXXX 语法。请改用 \x{XXXX}。更多详情 Regular Expression Unicode

此外,您必须对引号内的反斜杠(或三重)进行双重转义以获得文字反斜杠:示例如下:

'/\\\u([\d\w]{4})/'

"/\\\\u([\d\w]{4})/"

在你的情况下,正则表达式应该是 [^\\\u0000-\\\uFFFF]

例子:

$regex = '[^\\\u0000-\\\uFFFF]';

$text = 'some text';

$a = preg_match($regex, $text, $b);

//var_dump($a);
var_dump($b);
var_dump(preg_last_error());

上面的例子不会产生任何警告和错误

关于PHP preg_replace 返回编译失败 : PCRE does not support,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34854220/

相关文章:

php - 如何用当前用户(登录用户)切换用户并备份MySql中的数据库?

php - 更新和删除触发器

php - PayPal Permissions API - 什么返回到 return_url?

php - 在另一台电脑上备份mysql数据库

php - 是什么导致我的 Laravel 8 应用程序出现此查询生成器错误?

php - 在 mySql 中加入多个数据库,用户凭据问题

java - 将 HttpClient 响应转换为 JsonObject 时出错

php - 将数据从集合回显到 Blade View

php - MySQL循环遍历列

php - 如何从sql查询中获取对象数组