我在处理可能是也可能不是 UTF-8 的另一个字符串(干草堆)中简单搜索两个字符的 unicode 字符串(针)时遇到问题
部分问题是我不知道如何指定用于 in 的代码strpos
,并且我不知道 PHP 是否必须在对代码的任何特殊支持的情况下进行编译,或者我是否必须使用mb_strpos
我正在尝试的避免,因为它也可能不可用。
IE。例如针是 U+56DE U+590D
(没有空格)
使用 preg_match 可能是preg_match("@\x{56DE}\x{590D}@",$haystack)
但实际上需要@u
的可能不可用,Compilation failed: character value in \x{...} sequence is too large
无论如何我得到了。
我不想使用 preg_match ,因为它可能比 strpos 慢得多(还有其他序列需要搜索)。
我可以转换U+56DE U+590D
成它的单字节序列(可能是 5-6 个字符),然后通过 strpos 搜索它吗?如果是这样,我不知道如何将其转换为字节。
无论如何,您如何在 PHP 中指定 unicode 内联?我的意思是在PRCE之外?
$blah="\u56DE\u590D";
不工作?
感谢您的任何想法!