Javascript: 没有 HTML 标签的字符串长度

Javascript: Length of string without HTML tags

我有一段包含 HTML 和我自己的特殊标记的文本。在打印文本之前,我需要知道它的长度,这样我才能生成合适的对话泡泡。

我正在尝试获取字符串的实际长度,但无法获取所有特殊标记的长度。

他是字符串的例子

var text = 'Lorem ipsum dolor sit amet [T1]. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed aliquam accumsan elit, non vestibulum ex venenatis vitae. <br /><br />[D|1000] Hesitulus <br /> <span class="important"> l[D|100]o[D|100]r[D|100]e[D|100]m</span> <br />'

我正在尝试使用正则表达式获取所有“[]”类型子字符串的长度,但我不是这方面的专家,我只失败了第一个。尝试了更多选项,但没有成功。

var allMyMarkup = text.match( /(\[.*?\])/); // selecting only the first code

如何获取我的模式的所有出现?

使用如下 'g' 修饰符:

text.match( /(\[.*?\])/g)

g modifier指的是'global',意思是,查找所有匹配项,而不仅仅是第一个。

使用:

document.querySelector('.your_element').innerHTML.length;

内部HTML 方法去除 HTML 标签。