#!/usr/bin/perl
$mystring = "[2004/04/13] The date of this article.";
if($mystring =~ m/(\d+)/) {
print "The first number is $1.";
}
Perl이 돌아왔지만 2004
Kiki와 Kodos도 돌아왔습니다 /04/
. 왜?
답변1
Python 코드(또는 Kiki 및 Kodos가 무엇인지)를 제공하지 않았기 때문에 확실히 알기는 어렵지만 내 생각에는 Kiki 및 Kodos의 패턴 구문이 슬래시 구분 기호가 필요하지 않다는 점에서 Perl과 다르다는 것입니다. 예를 들어 Python에서는 다음과 같습니다.
import re
m = re.search('(\d+)', "[2004/04/13] The date of this article.")
print m.group(0)
이 패턴에는 슬래시가 포함되어 있지 않습니다.
답변2
Perl에서는 정규식 연산자가 m
이중 슬래시 /..../
( ....
실제로는 정규식)가 아니라는 점을 인식하는 것이 중요합니다. m
를 사용하는 경우 선택 사항입니다 /
.
다음은 모두 동일합니다.
$mystring =~ m/(\d+)/;
$mystring =~ /(\d+)/;
$var = '(\d+)';
$mystring =~ /$var/;