0

当我在段落或 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>
4

2 回答 2

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函数是从这里收集的阿拉伯语的正则表达式

于 2017-01-11T19:39:06.697 回答
0

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

例子:

var re = new RegExp('[\\ه\\ن\\ا]','gi')
于 2017-01-11T19:05:14.967 回答