正则表达式忽略字符串中的某些部分


Regexp ignore certain parts in string

>我需要对字符串使用正则表达式来查找匹配的结果。我需要找到 (.+?(,但想忽略它现在显示 (*( 的所有内容:

$regex='#<span class="(*)"><a href="/venues/(*)">(.+?)</a></span>#';

它不是忽略 (*(,而是回显出 (* ( 中的内容。

我怎么能忽略这些而只得到 (.+?

括号表示捕获:这些()内的内容将被捕获,以便您以后使用它。

如果您不希望捕获某些内容,因为您不想/以后需要使用它,只需删除括号即可。

我应该补充一点,使用正则表达式从 HTML 中提取数据通常不是一个好主意......您可能希望改用 DOM 解析器,例如 DOMDocument::loadHTML() .