这个正则表达式在PHP中工作:
preg_match('/[xF0-xF7][x80-xBF]{3}/', '𤋮');
我需要将其移植到 Ruby:
/[xF0-xF7][x80-xBF]{3}/ =~ '𤋮'
只是打印too short escaped multibyte character: /[xF0-xF7][x80-xBF]{3}/
错误。
这是怎么回事?我不明白这个错误在说什么。试图用\
做更多的逃跑,但什么都没有。
我认为您的字符编码已关闭。如果尝试指定特定的 unicode 代码点,请使用u####
转义序列。
但是,此处介绍了处理字符串编码之间转换的更可靠的方法。这将允许您指定输入编码,所需的输出编码,并让Ruby完成删除您不需要的字符的工作。