पैटर्न मुझे इस कोड को चलाने के साथ चाल निभाता है, मैं "नहीं" बाहर मुद्रित:पर्ल एक 'स्मृति फ़ाइल' के लिए लेखन मिलान
my $memory_file;
my $fh;
open ($fh, '>', \$memory_file);
print $fh "abc";
if($memory_file =~ m/^.*$/)
{ print "yes\n" }
else
{ print "no\n" }
अगर मैं $memory_file
प्रिंट आउट, सामग्री वास्तव में कर रहे "abc"
।
यदि मैं पैटर्न को .*
(^
या $
) में बदलता हूं तो यह अपेक्षा के अनुसार काम करता है।
अगर मैं मैच से पहले लाइन $memory_file = "abc"
शब्दों में कहें, मैं 'हां' बाहर मुद्रित (मूल रूप से उम्मीद के रूप में)।
क्या पृथ्वी पर यहाँ पर चल रहा है?PerlMonks पर कुछ और चर्चा:
अद्यतन (यह पर्ल 5.14.1 है)। यह एक बग की तरह प्रतीत होता है, मैं इसे लॉग कर दूंगा।
अद्यतन 2: ठीक पर्ल डेवलपर्स इस बग तय कर दी है: https://rt.perl.org/rt3//Public/Bug/Display.html?id=108398
यह एक बग की तरह लगता है: http://perldoc.perl.org/perlbug.html ('perldoc perlbug') – toolic