混合字符串希伯来语和英语,并抓住前10个字符完成到最后一个字

时间:2015-11-26 16:11:48

标签: php regex utf-8 pcre

我有一个混合的希伯来语和英语字符串,我想要抓住前10个字符,而不是在中间切换一个字。例如:

    >שלום is peace not a war

我用:

/^[a-zA-Z\-\u0590-\u05ff ]{1,10}\b/i

我的结果:שלום is [0-7]

没有b标志结果的

是:שלום is pe [0-9]

必填结果为:שלום is peace [0-12]

由于

1 个答案:

答案 0 :(得分:0)

您可以使用\p{Hebrew}属性来匹配希伯来字符。

$re = '/^[a-zA-Z\p{Hebrew} ]{10,}?\b/mu'; 
$str = "שלום is peace not a war"; 

preg_match_all($re, $str, $matches);

print_r($matches[0]);

RegEx Demo