我有一个可能如下所示的列表:
<ul>
<li>Table</li> <!-- English -->
<li>मेज</li> <!-- Hindi -->
<li>میز</li> <!-- Urdu -->
</ul>
我想使用jQuery来读取list-item中的字符,如果它在阿拉伯语unicode范围内找到任何字符(0x0600 - 0x06FF),则加下划线。
这就是我所拥有的:
$("li:contains(/[\u0600-\u06FF]/)").css( "text-decoration", "underline" );
它应该匹配第三项,但我显然做错了什么。 jQuery选择器中:contains
不允许使用正则表达式...
答案 0 :(得分:3)
您可以filter()
使用RegExp
请尝试以下方法:
var regex = new RegExp(/[\u0600-\u06FF]/);
$("li").filter(function() {
return regex.test($(this).text());
}).css("text-decoration", "underline");