php - preg_replace 和 preg_match 阿拉伯字符

标签 php utf-8 preg-replace preg-match arabic

<分区>

Possible Duplicate:
how to add Arabic letters to url regex

我已经搜索了几个小时,但没有找到答案。

如何在阿拉伯字符和英语字符上使用 preg_replace?

这是我的代码是英文的

$string = preg_replace ( "/&([a-zA-Z])(uml|acute|grave|circ|tilde|ring),/", "", $string );
$string = preg_replace ( "/[^a-zA-Z0-9_.-]/", "", $string );

一些答案​​建议我使用这段代码:

$string = preg_replace ( "/&([أ-يa-zA-Z])(uml|acute|grave|circ|tilde|ring),/u", "", $string );
$string = preg_replace ( "/[^أ-يa-zA-Z0-9_.-]/u", "", $string );

我已经测试过它并且有效。但这实际上对 php 有用吗?它包括所有阿拉伯字符吗?有没有更好的方法来包含所有阿拉伯字符?

我要用代码做的是:

将字符串中的所有字符替换为有效的 SEO 友好字符。

我使用基于 http://www.unicodemap.org 的代码解决了这个问题.谢谢布莱恩。

$string = preg_replace ( "/&([\x{0600}-\x{06FF}a-zA-Z])(uml|acute|grave|circ|tilde|ring),/u", "", $string );
    $string = preg_replace ( "/[^\x{0600}-\x{06FF}a-zA-Z0-9_.-]/u", "", $string );

最佳答案

unicode character map是可视化包括阿拉伯语在内的字符组的好地方,字符串的第一部分使用 [أ-يa-zA-Z]

为您分组

如果您仍然不确定,请继续阅读 regular expressions .

关于php - preg_replace 和 preg_match 阿拉伯字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12046526/

相关文章:

phpexplode() 来自 MySQL 数据库的变量 - 正确的语法?

javascript - 有没有办法强制 Node 使用 Unicode 字符的代理对(JSON 格式)写入文件?

python-2.7 - 获取适当长度的表情符号

php - preg_replace 正则表达式不输出任何内容

PHP 如何删除少于 6 个字符的行

php - 如何通过php过滤任意给定数量的html标签

php - 时间戳、时区和夏令时

php - 无法重新声明类 - 检查类是否已存在

bash - 如何在 Bash 脚本中为 conky 创建特殊字符?

php - Regex PHP - 自动检测 YouTube、图像和 "regular"链接