如果段落阿拉伯语言,通过Javascript或jQuery添加类

时间:2017-01-11 18:40:09

标签: javascript jquery rtl-language

当我在段落或div上使用不同的语言(如阿拉伯语)时,我会添加类来制作花药字体和方向 我会让它自动化。

<div class="paragraph">
    <p>عربي لغة عربية تغير الاتجاه هنا</p>
</div>
<div class="paragraph">
    <p>example</p>
</div>

<script type="text/javascript">
    var regoo = "example|assignment";
    var re = new RegExp(regoo, 'ig');

    if($('div, p').text().match(re)) {
         $(this).addClass('gold');
    }
</script>

2 个答案:

答案 0 :(得分:2)

可以这样做

function HasArabicCharacters(text){
    var arregex = /[\u0600-\u06FF]/;
	return arregex.test(text);
}

var textBlock = document.querySelector('#app p');
if(HasArabicCharacters(textBlock.textContent)){
	textBlock.classList.add('arabic');
}
.arabic{
	color: green;
}
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>Arabic test</title>
</head>
<body>
<div id="app">
	<p class="text">عربي لغة عربية تغير الاتجاه هنا</p>
</div>
</body>
</html>

HasArabicCharacters函数是从Regular Expression For Arabic Language

收集的

答案 1 :(得分:0)

在你的正则表达式中使用方括号,并提供阿拉伯语的所有字符,它将匹配任何顺序提供的任何字符。它与(a | b | c | d)相同但代码较少。如果它不起作用,请尝试使用反斜杠为字符添加前缀,因为它们可能被归类为特殊字符。注意,如果在引号内使用反斜杠,则每个字符需要使用两个反斜杠。

示例:

var re = new RegExp('[\\ه\\ن\\ا]','gi')