Javascript 带异常的正则表达式

Javascript 带异常的正则表达式,javascript,regex,Javascript,Regex,有没有办法向正则表达式添加正则表达式异常 例如: (regular expression/regular expression to ignore) 我有以下正则表达式: \W 但希望它忽略引号内的字符串(我将用于此的正则表达式是:“(.*?”)。但是我不知道如何向\W正则表达式添加异常 我想要这样的东西: \W(ignore->"(.*?)") 有什么想法吗?任何帮助都将不胜感激。编辑:您的问题询问的是\W(非单词字符),但您可能想在这些问题上进行分割。似乎你想

有没有办法向正则表达式添加正则表达式异常

例如:

(regular expression/regular expression to ignore)
我有以下正则表达式:

\W
但希望它忽略引号内的字符串(我将用于此的正则表达式是:
“(.*?”
)。但是我不知道如何向
\W
正则表达式添加异常

我想要这样的东西:

\W(ignore->"(.*?)")

有什么想法吗?任何帮助都将不胜感激。

编辑:您的问题询问的是
\W
(非单词字符),但您可能想在这些问题上进行分割。似乎你想匹配这些,所以我在回答中将大写的
\W
改为小写的
\W

您可能正在寻找以下内容:
(?:“[^”]*?“|\w)+

我们的想法是以不同的方式对待引用的子字符串。下面是它的工作原理:

  • 一个或多个内容:
    (?:
    “[^”]*?“|\w
    )+
    ,其中内容是
  • 带引号的字符串或单词字符
  • 带引号的字符串是
    [^”]*?“
    是一个
    ,后跟尽可能少的非引号字符
    [^”]*?
    ,然后是结束符

我不知道如何使用单个正则表达式执行此操作,但您可以通过两个步骤完成。(I)用空字符串替换异常;(ii)搜索新字符串

let text=`Hey“aaa bbbbbb&&&&&&&&”!@#“hahaha 123%%”;
让newText=text.replace(/“(.*?”)/g,”;
console.log(newText);
设matches=newText.match(/\W/g);

console.log(匹配);
是的,在PCRE中,这是小菜一碟:
“[^”]*”(*SKIP)(*F)|\W
。您的正则表达式风格是什么?我正试图用JavaScriptOk实现它,那么您的代码是什么?您的意图是什么:提取、替换、移除、拆分?展示一些真实的测试用例。我试图将一个输入代码(Java类以.txt的形式)分离到一个“令牌”数组中。我使用\W将代码分隔为多行。但是有了这个,我又谈到了字符串被拆分的问题。在\W中为引号内的字符串使用异常可以解决此问题。:)请找到专用的语言解析器。单个拆分正则表达式无法帮助您正确解析任意Java文件。这个
(?:“[^”]*?“|\w)+
最终不会有帮助,因为仅仅一行
String str=“with\”quotes\”;
就可以打断它。是的,这个示例只适用于简单的字符串。如果源文件包含
$“{(“h”)之类的内容“
@”>”