我正在制作乌克兰语音键盘。人们输入英文,字母会自动更改为相应的乌克兰字符。但是,当我使用它时,我有时需要用英语写自己的笔记(它们的作用与代码中的注释相同 - 对于其他人和我自己而言)。
我想用标签表示评论的开头("<")。如何检查当前是否有开放标签?
我在想这样的事情:
if (number of "<" is greater than ">") {//if a tag has been opened and not closed
//disable translation, type in English
}
我理解如何禁用翻译 - 不过,我对此不确定 &#34;如果&#34;
如何检查
number of "<" is greater than ">"
谢谢!
答案 0 :(得分:1)
计算每一个如下
var countGreaterThan = (temp1.match(/</g) || []).length;
var countLessThan = (temp1.match(/</g) || []).length;
和temp是textarea的字符串值
答案 1 :(得分:1)
根据数据的位置,您可以执行以下操作:
var data = document.querySelector('#data-container').innerHTML;
var isOpenTagPresent = getSymbolCount('<') > getSymbolCount('<');
if(isOpenTagPresent) {
//execute your logic
}
function getSymbolCount(symbol) {
var count = 0;
for(var i = 0; i < data.length; ++i) {
if(data[i] === symbol) {
count++;
}
}
return count;
}
希望这有帮助,欢呼!
答案 2 :(得分:1)
您可以使用.match()
计算特定字符数在你的情况下
var string = "<<<>>";
if ((string.match(/</g)||[]).length > (string.match(/>/g)||[]).length) {
console.log("More");
}
else {
console.log("Less or equal");
}