正则表达式:找到一个字符,除非该字符被双引号引起来

时间:2018-12-10 13:00:42

标签: javascript regex

除非要用双引号引起来,否则我希望在字符串中找到一个字符,例如','。

例如在字符串中: “示例“字符串””

我希望它与'Example'之后的逗号匹配,但不匹配'String'之后的逗号。

是否存在可以执行此操作的正则表达式?

2 个答案:

答案 0 :(得分:1)

您可以使用(?![text])对正则表达式中的一组字符取反。

例如,类似(?!"),(?!")的东西会找到所有,未“触及”的"。您可能需要检查此正则表达式的多个变体来获取所需的结果,但是我认为您应该能够使用给定的示例进行工作。

答案 1 :(得分:0)

像这样吗?

console.log(
  `For example in the string: 'Example, "String,"'`.match(/, /g).length,
  `For example, in the following string: 'Example, "String," I'd like to find all ","'`.match(/, /g).length,
)