Regex 用于查找正则表达式的正则表达式?

Regex 用于查找正则表达式的正则表达式?,regex,grep,Regex,Grep,是否有人拥有查找包含正则表达式的文件的代码?我想你可能会有两种不同的口味,一种是BRE,一种是ERE 您可能会认为某种测试套件会有类似于isRegex()测试的东西。谁能有密码?当然是在寻找一些综合性的东西 我看到有人对此进行了讨论,但没有看到任何实际的回应。如果我想对任何包含正则表达式的文件进行grep处理(可能以典型的//为边界),我将如何处理它?Beyond egrep '/.+/' file 您看到的是一个非常复杂的练习。正则表达式本身并不是一个很好的工具。线索是它们包含括号和方括号,

是否有人拥有查找包含正则表达式的文件的代码?我想你可能会有两种不同的口味,一种是BRE,一种是ERE

您可能会认为某种测试套件会有类似于isRegex()测试的东西。谁能有密码?当然是在寻找一些综合性的东西

我看到有人对此进行了讨论,但没有看到任何实际的回应。如果我想对任何包含正则表达式的文件进行grep处理(可能以典型的//为边界),我将如何处理它?

Beyond

egrep '/.+/' file

您看到的是一个非常复杂的练习。

正则表达式本身并不是一个很好的工具。线索是它们包含括号和方括号,因此必须平衡


正则表达式本身可以用A来描述,也可以用A来解析。

如果您专门查找只包含或大部分包含正则表达式的文件,那么统计信息应该告诉您,某个文件包含的语法比其他文件更多。因此,您可以定义一组指标,并将它们的分数合并到一个度量中,该度量将对感兴趣的可能性进行评分。选择一个截止点,让它过去。一些指标:

  • 存在多个[0-9]、[A-Z]、+等
  • 存在/foo/
  • 不是标准代码文件
  • 可压缩性较低(我知道这很诡异,但正则表达式语法的紧凑性直觉上比普通单词更难压缩)
但是如果这只是一次尝试,那么您最好使用并手动减少结果。您正在寻找的正则表达式中是否有更容易找到的特定内容?

可能的重复项