1
在PHP中,有一个已知的安全/可靠的方式来检测希伯来文字符在PHP中的字符串
- 检测,一般,希伯来文字符是在纯英文字符的字符串。
- 替换字符的东西
我知道我可以,一组特定的字符,请使用mb_ereg_replace
替换特定的字符。但是,我有兴趣能够扫描可能包含任何希伯来字符的字符串,然后将其替换为东西。
也就是说,我可能有两个字符串这样
<?php
$string1 = "Look at this hebrew character: חַ. Isn't it great?";
$string2 = "Look at this other hebrew character: יַָ. It is also great?";
我希望有一个单一的功能,这将使我下面的字符串
Look at this hebrew character: \texthebrew{ח}. Isn't it great?
Look at this other hebrew character: \texthebrew{י}. It is also great?
理论上我知道我可以扫描字符串the hebrew UTF-8 range中的字符并检测这些字符,但是字符串对字符串编码的工作原理在PHP中一直对我有点模糊,如果存在这样的情况,我宁愿使用经过验证/已知的解决方案。
确保字符串是UTF-8编码,然后处理unicode属性。您也可以先将其归一化。 – hakre
感谢您的时间/关注@hakre - 这就是我所得到的东西*理论上我知道我可以扫描字符串以查找希伯来语UTF-8范围内的字符并检测这些*。然而,由于那些闻名于未知未知数的任务之一,我更喜欢一些经过验证的科学,然后再去创造另一个车轮。 –
我给你留下了一个答案,这可以通过mb_ *函数族完成。 Unicode支持正在运行,您应该提供编码为UTF-8的字符串。使用preg_match验证字符串是否正确地使用UTF-8编码,mb_ereg_ *有无效UTF-8的问题(没有将其检测为无效)。 – hakre