我的文件包含以下内容:
ServerName www.example.com ServerAlias example.com.com ServerAlias www.example.com.k.net ServerAlias example.com.net ServerAdmin “me.example.com”DocumentRoot“/web/docroot/0/example.com/htdocs” AssignUserId user1example.com user1example.com包括 /网络/虚拟主机-包括
我希望能够从文件中提取/web/docroot/0/example.com/htdocs
的完全匹配。使用bash grep很容易但是 - 我试图在PHP中这样做。另请注意,由于安全原因,我们不允许从PHP执行bash。
我试过了:
$loc = file_get_contents($path_to_file);
preg_match("\/web.*$", $loc, $f);
print_r($f); //nothing comes out
答案 0 :(得分:1)
你可以试试这个正则表达式:
DocumentRoot\s*\"(.*?)\"
它将在DocumentRoot
中附加"
之后查找网址。
答案 1 :(得分:1)
你只是忘记了表达式周围的正则表达式分隔符(即。//)
preg_match("/\/web.*$/", $loc, $f);
答案 2 :(得分:1)
以下为我效劳:
if (preg_match('#/web/[^"]+#', $repl, $arr))
var_dump($arr[0]);