(줄 바꿈을 유의하시기 바랍니다) 나는 텍스트 파일을했습니다 나는 일치하고 다음 텍스트를 지울 :대체에서 변수를 사용하는 방법은 무엇입니까?
이[ From:
http://www.website.com ]
다음 코드는
$text =~ s/\[.*\]//ms;
이 다른하지 않는
작동my $patt = \[.*\];
$text =~ s/$patt//ms;
누군가 내게 왜 친절한 설명을 해주겠습니까?
#!/usr/bin/perl
use strict;
use warnings;
my $text = qq{a[ From:
http://www.website.com ]b};
my $patt = qr/\[.*?\]/s;
$text =~ s/$patt//;
print $text;
인쇄 :
ab
내가 추가를하면 패턴 문자열을 인용하고 구문 오류를 제거하는 경우 사전
따옴표 붙이지 않은 문자열이 "작동"하지 않는 이유는 무엇입니까? 그리고 제발 좀 더 구체적으로 ['그것은 작동하지 않습니다'] (http://tlp-perl.blogspot.se/2013/06/its-not-working.html) – TLP
당신은 완벽하게, 내 "그것 does not work "는 코드가 아무 것도 아니므로 텍스트가 제거되지 않는다는 의미입니다. – Daniele
네, 그것은 공정한 추측입니다. 그러나 파일 또는 유사 항목에서 읽는 경우 문제가 될 수있는 여러 줄 입력이 있습니다. – TLP