javascript - jQuery 动态从右到左的 CSS 处理

标签 javascript jquery regex

我有一个看起来像这样的列表:

<ul>
 <li>Table</li>  <!-- English -->
 <li>मेज</li>    <!-- Hindi -->
 <li>میز</li>   <!-- Urdu -->
</ul>

我想使用 jQuery 读取列表项中的字符,如果它在阿拉伯语 unicode 范围 (0x0600 - 0x06FF) 中找到任何字符,则在其下划线。

这是我的:

$("li:contains(/[\u0600-\u06FF]/)").css( "text-decoration", "underline" );

它应该与第三项匹配,但我显然做错了什么。也许在 jQuery 选择器中 :contains 不允许使用正则表达式...

最佳答案

您可以将 filter()RegExp 一起使用。
尝试以下操作:

var regex = new RegExp(/[\u0600-\u06FF]/);

$("li").filter(function() {
    return regex.test($(this).text());
}).css("text-decoration", "underline");

关于javascript - jQuery 动态从右到左的 CSS 处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29095001/

相关文章:

javascript - 使用服务器端系统时间的客户端时钟

javascript - 在焦点上的 anchor (<a>) 元素上禁用灰色边框

javascript - JavaScript 中奇怪的正则表达式行为

html - 如何使用 Perl 删除所有只有空格的字体标签?

javascript - 浏览器本地存储的安全性如何?

javascript - 是否有类似于 MATLAB erfinv() 的逆误差函数的 JavaScript 实现?

javascript - 将 anchor 标记应用于数组中的每个元素?

jquery - 显示,同时隐藏两个对象 Jquery?

jquery - 没有文档类型的 IE 中的问题

javascript - 如何使用 JavaScript 正则表达式向文本添加标记