[PERL] 최소 일치 정규 표현식 (Non-greedy regular expression)
CS/Shell/Perl/Python 2011. 4. 15. 13:14원문: http://www.bayview.com/blog/2003/02/12/non-greedy-regular-expressions/
$src = "www.google.com"
$www = ($src =~ /(.*)\./ && 1);
과 같이 할 경우 기본적으로 greedy matching이 되기 때문에
$www = "www.google" 이 된다.
$src = "www.google.com"
$www = ($src =~ /(.*)\./ && 1);
과 같이 할 경우 기본적으로 greedy matching이 되기 때문에
$www = "www.google" 이 된다.
방법 1.
$www = ($src =~ /([^.]*)\./ && 1);
방법 2.
.*? 혹은 .+? 를 사용하여 Non-greedy matching 시킨다.
$www = ($src =~ /(.*?)\./ && 1);