Javascript正则表达式-捕获除C风格注释之外的所有内容

Javascript正则表达式-捕获除C风格注释之外的所有内容,javascript,regex,Javascript,Regex,问题是:我试图在代码标记的内容中设置某些关键字(例如“function”)的样式,但不包括出现在该内容中的C样式注释中的那些关键字。 解决方案:我相信代码标记的innerHTML字符串与正则表达式模式的匹配(这将排除C风格的注释)可以完成这项工作 有什么建议吗 C样式的注释可以嵌套,因此不适合正则表达式 匹配未列出的C样式注释很简单: /\*.*?\*/ 允许一级嵌套会导致: /\*(?:(?!\*/|/\*).)*+(?:/\*(?:(?!\*/|/\*).)*+\*/(?:(?!\*/|/

问题是:我试图在代码标记的内容中设置某些关键字(例如“function”)的样式,但不包括出现在该内容中的C样式注释中的那些关键字。 解决方案:我相信代码标记的innerHTML字符串与正则表达式模式的匹配(这将排除C风格的注释)可以完成这项工作


有什么建议吗

C样式的注释可以嵌套,因此不适合正则表达式

匹配未列出的C样式注释很简单:

/\*.*?\*/
允许一级嵌套会导致:

/\*(?:(?!\*/|/\*).)*+(?:/\*(?:(?!\*/|/\*).)*+\*/(?:(?!\*/|/\*).)*+)*+.*?\*/
(摘自中国图书馆)。试着想象一下,如果你允许更多,会发生什么

我将您的问题理解为“正则表达式是否可以匹配C风格注释之外的文本块?”——这将比这更复杂。想象一个类似于
“这用于启动C注释:/*”
”的字符串。此外,如果您仍想尝试此功能,则需要查找JavaScript不支持的内容。

等等。。。你想用正则表达式解析(内部)HTML吗?这是为了一些重要的/安全关键的事情吗?看看他们是如何做到的