[security] [client 198.66.91.7] [domain testphp.example.com] [200] [/apache/20160503/20160503-0636/[email protected]] (null)
所需的輸出
/apache/20160503/20160503-0636/[email protected]
這裏是我迄今爲止
'.*?\[.*?\].*?\[.*?\].*?\[.*?\].*?\[.*?\].*?\[(.*?)\]'
我的Perl代碼。
#!/usr/bin/perl
use feature 'say';
$txt='[modsecurity] [client 199.66.91.7] [domain testphp.vulnweb.com] [200] [/apache/20160503/20160503-0636/[email protected]] (null)';
$re=''.*?\[.*?\].*?\[.*?\].*?\[.*?\].*?\[.*?\].*?\[(.*?)\]'';
if ($txt =~ m/$re/is)
{
$sbraces1=$1;
say $1;
}
輸出
/apache/20160503/20160503-0636/[email protected]
我覺得我的正則表達式是凌亂?也許另一種方式?
感謝
您應該使用拆分方法。 –
您的評論應該是一個答案 – Deano
@Deano我添加了答案。 – AKS