【发布时间】:2015-11-26 16:11:47
【问题描述】:
我有一个混合字符串希伯来语和英语,我想捕捉前 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]
谢谢
【问题讨论】:
我有一个混合字符串希伯来语和英语,我想捕捉前 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]
谢谢
【问题讨论】:
您可以使用\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]);
【讨论】: