首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除阿拉伯语中的垃圾字符

问删除阿拉伯语中的垃圾字符
EN

Stack Overflow用户
提问于 2011-07-11 02:47:04
回答 3查看 4.6K关注 0票数 9

我需要从字符串中删除所有非阿拉伯字符,最终with the help of people from stack-overflow能够提出以下正则表达式来删除所有非阿拉伯字符。

代码语言:javascript
复制
preg_replace('/[^\x{0600}-\x{06FF}]/u','',$string);

问题是上面的代码也删除了空格。现在我发现我也需要来自A-Z,a-z,0-9, !@#$%^&*()的字符。那么我需要如何修改正则表达式呢?

感谢你

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-11 02:50:44

将您希望保留的字符添加到您的字符类中:

代码语言:javascript
复制
preg_replace('/[^\x{0600}-\x{06FF}A-Za-z !@#$%^&*()]/u','', $string);
票数 12
EN

Stack Overflow用户

发布于 2013-11-07 06:00:06

假设您有以下字符串:

代码语言:javascript
复制
$str = "Arabic Text نص عربي test 123 و,.m,............ ~~~ ٍ،]ٍْ}~ِ]ٍ}";

这将只保留带空格的阿拉伯字符。

代码语言:javascript
复制
echo preg_replace('/[^أ-ي ]/ui', '', $str);

这将保留仅包含数字的阿拉伯语和英语字符

代码语言:javascript
复制
echo preg_replace('/[^أ-يA-Za-z0-9 ]/ui', '', $str);

这将在稍后回答您的问题。

代码语言:javascript
复制
echo preg_replace('/[^أ-يA-Za-z !@#$%^&*()]/ui', '', $str);
票数 5
EN

Stack Overflow用户

发布于 2013-12-24 20:38:59

在上面的例子中,以更详细的方式,考虑下面的字符串:

代码语言:javascript
复制
$string = '<div>This..</div> <a>is<a/> <strong>hello</strong> <i>world</i> ! هذا هو مرحبا العالم! !@#$%^&&**(*)<>?:";p[]"/.,\|`~1@#$%^&^&*(()908978867564564534423412313`1`` "Arabic Text نص عربي test 123 و,.m,............ ~~~ ٍ،]ٍْ}~ِ]ٍ}"; ';

代码:

代码语言:javascript
复制
echo preg_replace('/[^\x{0600}-\x{06FF}A-Za-z0-9 !@#$%^&*().]/u','', strip_tags($string));

Allows:英文字母,阿拉伯字母,0到9,字符!@#$%^&*().

Removes:所有html标记,以及上述以外的特殊字符

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6643148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档