我目前正在尝试查找混合字符串(包含日语 utf-8 字符和英语字符)中特定系列字符的位置。我目前像这样拉匹配和偏移:
preg_match_all( $regex, $string, $allmatches, PREG_OFFSET_CAPTURE );
但是当我的匹配字符串前面有日语字符时,偏移量似乎太大了。
こんいちはabcd
匹配こんばんは
abcdeabcd
匹配abcde
这两个字符串的偏移量应为 10,但 preg_match_all 返回的数字远高于包含日语字符的字符串的数字。
如何确保所有字符串的偏移量都是标准的?
编辑:对于那些感兴趣的人,我的正则表达式非常基本。只需设置为匹配一系列空格即可: /( +){3}/iu
最佳答案
关于php - preg_match_all 在 PHP 中返回 utf-8 的正确偏移量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19178213/