用于查找项目中所有正则表达式的正则表达式

问题描述:

我需要优化JavaScript项目中的所有正则表达式。我通过简单搜索找到了使用新RegExp创建的所有内容。问题是以文字形式创建的问题:/asd/用于查找项目中所有正则表达式的正则表达式

我正在使用PhPStorm,因此正则表达式引擎是Java。这意味着我们看起来很后面。所以我想出了这个:

(?<=[\s=(,\[\?:;|)])\/[^*\n/][^\n/]*[^*]\/ 

这意味着在给我的一切,看起来像/.../并且不受下列之一前面:\s= (,[?:;|)

  1. 正则表达式可以前面有其他的东西吗?
  2. 你有更好的主意吗?

搜索由String和RegExp类使用的方法是不可接受的(exec,replace ...),因为在某些项目中查找声明非常困难并且需要大量时间。另外,你可以有多个使用相同的正则表达式。

+1

只有在特定的上下文中,您无法有效地使用正则表达式解析源代码。因此,后顾无助。您可以尝试使用['/[^\\/]*(?:\\/[^\\/]*)*/'](https://regex101.com/r/tfzR0C/1),但在那里恐怕会对它“过火”。是的,你可以在它之前加一个'(?

+0

在JavaScript中的正则表达式还要注意表达, 摹后可以有标志 - 全球 我 - 不区分大小写 米 - 多行 Ÿ - 粘搜索 – Stefan

+2

您可以搜索使用正则表达式的所有方法:'exec', 'test','match','search','replace'和'split' –

我的正则表达式有点偏离。我最终使用了这种方法:

(?<=[\s=(,\[\?:;|)])\/[^\n/].*?\/