使用javascript计算html标记长度

使用javascript计算html标记长度,javascript,html,tags,Javascript,Html,Tags,我有一个html字符串,如下所示: <span class="1"><br>hi how<br>are</span><span>you?</span><br> 你好你好吗? 还有一个文本字符串:“你好吗?” 我有一个数字n,例如4。 在文本字符串中,第四个字符(从0开始计数)是“o”。 我想使用tag_count()从html字符串中提取相同的字符。 在这种情况下,变化应该是20,但我不工作 var stri

我有一个html字符串,如下所示:

<span class="1"><br>hi how<br>are</span><span>you?</span><br>

你好
你好吗?
还有一个文本字符串:“你好吗?”

我有一个数字n,例如4。 在文本字符串中,第四个字符(从0开始计数)是“o”。 我想使用tag_count()从html字符串中提取相同的字符。 在这种情况下,变化应该是20,但我不工作

var string="<span class="1"><br>hi how<br>are</span><span>you?</span><br>";
var c=4+tag_count(4,string);


function tag_count(n,string) {
    var variation=0;
    var i;
    for(i=0;i<=n;i++) {
        if(string.charAt(i)=="<") {
            var j=0;
            while((string.charAt(i+j)!=">")&&(string.charAt(i+j)!==undefined)) {
                j++;
            }
            n=n+j+1;
            variation=variation+j+1;
        }
    }
    return(variation);
}
var string=“
你好
你好吗?
”; var c=4+标记计数(4,字符串); 函数标记计数(n,字符串){ var变化=0; var i; 对于(i=0;i你可以这样做:

var string="<span class="1"><br>hi how<br>are</span><span>you?</span><br>";
var length = $(string).find('*').andSelf().length;
console.log(length);
var string=“
你好
你好吗?
”; 变量长度=$(字符串).find('*').andSelf().length; 控制台日志(长度);
执行此操作的最佳方法:

  • 使用
    regex
    Replace
    将所有标记替换为空字符串
  • 使用
    charAt
    输出字符位置
  • 要查找标记,请使用正则表达式:

    var tags = /<+?.*?>/g;
    
    完整的JavaScript

    var html=“
    你好
    你好吗?
    ”; 函数字符TMLTEXT(html,n){ var tags=//g; var str=html.replace(标记“”); var-res=str.charAt(n); 返回res; } var res=charAtHtmlText(html,4); 警报(res); //console.log(res);
    var str = html.replace(tags, "");