相关问题:当不跟随特定字符(?)时,如何使用正则表达式匹配字符(')?
我正在使用正则表达式(PHP PCRE 库)解析日志,并尝试从中提取 URL。URL 被封装在双引号 ",但有些请求还包含双引号 "。例如:
"https://www.amh.net.au/online/dbSearch.php?t=all&q=\"Rosuvastatin\""
我的第一个模式基本上是:
#\"([^\"]*)\"#
这工作得很好,直到我到达上面的条目之一,它截断了匹配,所以我得到的只是:
https://www.amh.net.au/online/dbSearch.php?t=all&q=\
在四处挖掘并重新发现http://addedbytes.com上的正则表达式备忘单以及http://www.regular-expressions.info/lookaround.html上的一些更有用的信息之后, 我现在尝试了以下后视:
#"([(?<!\\)"]*)"#
但是,现在我得到的只是“”,然后是一个空字符串