Preg匹配阿拉伯语?

时间:2014-11-11 16:56:04

标签: php regex preg-match arabic

我试图预先匹配一个链接,其中一半是英文,一半是阿拉伯语。

链接作为示例如下:

"/<arabic>/123/<arabic>-<english>.html" 

基本的preg_match('@<a href="/(.*?).html" >);会返回所有内容,但是网址中的阿拉伯语意味着它不再可以识别页面,例如返回"دانلود-رایÚ"

我尝试过一些我曾见过的事情,例如\p{Arabic},但这并没有任何回报。有没有办法能够捕获这些链接?

这是我非常难过的事情,无法解决这个问题。

修改以添加preg match&amp;我想要匹配的东西。

preg_match_all('@<a href="/\p{Arabic}/(.*?)/\p{Arabic}-(.*?)" >@iu',$page,$link);

示例文字 -

"a href="/دانلود-رایگان-کتاب/کتاب-های-خارجی/مطلب/2120-the-essential-financial.html"

1 个答案:

答案 0 :(得分:0)

在使用regex to parse HTML之前请三思。

$doc = new DOMDocument();
$doc->loadHTML($yourHTML);

$links = $doc->getElementsByTagName('a');

foreach($links as $link){
  echo $link->getAttribute('href');
}