解析正则表达式本身并提取所需的部分


Parse the regular expression itself and extract required parts

我有一个遗留代码,它使用正则表达式在大文本中搜索某些文本模式并用链接替换它们。这些表达式具有许多可选参数,例如

(free.?)?(online.?)?Blackjack

为了加快速度,我想对普通的旧strpos进行快速检查,并在运行冗长的preg_replace替换之前查找表达式的所需部分(在本例中为"二十一点")。有没有办法处理表达式本身并仅提取所需的部分?我认为这是通过另一个正则表达式完成的,但以防万一,我正在使用 PHP。

您可以将原始可选部件从('([^)]*')'?)更换为空白,这将留下所需的部件。