我需要检查字符串是否包含阿姆哈拉语,它也可以包含英文字符:
const amharic = "የሙከራ test ሕብረቁምፊ";
amharc.match(pattern)
答案 0 :(得分:2)
UTF-16
范围和charCodeAt()
方法:阿姆哈拉字母的UTF-16
范围是 4608 至 5017 ,以及从 11648 至 11743 ,因此您可以使用charCodeAt()方法来检查字符串字符是否在这两个范围内。
检查并运行以下代码段,以获取上述内容的实际示例:
var string = "የሙከራ test ሕብረቁምፊ";
function checkAmharic(x) {
let flag = false;
[...x].forEach((e, i) => {
if (((e.charCodeAt(i) > 4607) && (e.charCodeAt(i) < 5018)) || ((e.charCodeAt(i) > 11647) && (e.charCodeAt(i) < 11743))) {
if (flag == false) {
flag = true;
}
}
})
return flag;
}
console.log(checkAmharic(string)); // will return true
console.log(checkAmharic("Hello All!!")); // will return false
ASCII
范围和正则表达式:阿姆哈拉字母的ASCII
范围从1200
到137F
,因此您可以使用正则表达式检查字符串字符是否在这两个范围内。
检查并运行以下代码段,以获取上述内容的实际示例:
var string = "የሙከራ test ሕብረቁምፊ";
function checkAmharic(x) {
return /[\u1200-\u137F]/.test(x); // will return true if an amharic letter is present
}
console.log(checkAmharic(string)); // will return true
console.log(checkAmharic("A")); // will return false