Javascript 正则表达式到行军元音不在某个单词中

Javascript 正则表达式到行军元音不在某个单词中,javascript,html,regex,Javascript,Html,Regex,我正在为一个简单的阅读辅助网站强调元音 我有一些HTML,想突出显示元音,但也有一些HTML,我不想弄乱。基本上只有其他单词 澄清 我有这个: Hello, this is a <mark data-trigger="">word</mark> that is in the text. I want to get all vowels and wrap it in spans, but avoid messing with the other html. 您好,这是

我正在为一个简单的阅读辅助网站强调元音

我有一些HTML,想突出显示元音,但也有一些HTML,我不想弄乱。基本上只有
其他单词

澄清

我有这个:

Hello, this is a <mark data-trigger="">word</mark> that is in the text. I 
want to get all vowels and wrap it in spans, but avoid messing with the other 
html.
您好,这是文本中的一个单词。我
想要得到所有元音并将其包装成跨距,但避免弄乱其他元音
html。
我想要这个:

H<span>e</span>ll<span>o</span>, th<span>i</span>s <span>i</span>s a <mark data-trigger="">word</mark> th<span>a</span>t...
你好,这是一个。。。 我知道这会替换所有元音>
replace(/(a | e | I | o | u)/ig,“$1”)

添加“不要弄乱标记标签内的任何东西”就足够了

我可以使用RegExp实现这一点吗


我可以使用外部库、jQuery或其他任何工具。

这应该可以捕获html标记中未包含的所有元音,也可以捕获标记中未包含的元音

/(a|e|i|o|u)|(?:*)/g

如果您确实想捕获html标记中的文本,那么应该是这样


/(a | e | i | o | u)|(?:)/g

你读过吗???鉴于该示例,你能说明预期结果是什么吗?另外:“添加“不要弄乱s中的任何东西”就足够了。”-什么是“s”?输入字符串是什么?@ashawley嘿!谢谢,我想我知道你不能用正则表达式解析html,但是这实际上是一小部分标记和不同的字符串。另外,我可以使用外部库或其他解决方案,正则表达式正是我想到的。@DavidThomas抱歉,编辑器弄乱了我的html标记。我的意思是我想防止正则表达式在MARK html标记中匹配。我还添加了示例和预期结果。这假设HTML只包含内联元素而不包含嵌套元素?例如,
其他标记中的标记

嘿!我想这也和标签里的东西相匹配。我已经在代码和这里尝试过了,它得到了标记内的文本:/top解决方案忽略html标记及其内容。