में परिवर्तनीय से पढ़ना मेरे पास पर्ल में एक ही चर में संग्रहीत कई लाइनें हैं।पर्ल
मैं जानना चाहता हूं कि <> ऑपरेटर का उपयोग करके उन पंक्तियों को पढ़ना संभव है या नहीं।
में परिवर्तनीय से पढ़ना मेरे पास पर्ल में एक ही चर में संग्रहीत कई लाइनें हैं।पर्ल
मैं जानना चाहता हूं कि <> ऑपरेटर का उपयोग करके उन पंक्तियों को पढ़ना संभव है या नहीं।
हां। perldoc -f open
में प्रलेखित के रूप में, आप स्केलर चर के लिए फ़ाइल हैंडल खोल सकते हैं।
my $data = <<'';
line1
line2
line3
open my $fh, '<', \$data;
while (<$fh>) {
chomp;
print "[[ $_ ]]\n";
}
# prints
# [[ line1 ]]
# [[ line2 ]]
# [[ line3 ]]
यदि आपको वास्तव में जरूरी है, तो आप इसे एक फ़ाइल खोल सकते हैं।
use strict;
use warnings;
my $lines = "one\ntwo\nthree";
open my $fh, "<", \$lines;
while(<$fh>) {
print "line $.: $_";
}
वैकल्पिक रूप से, आप पहले से ही वैसे भी स्मृति में सामान मिल गया है, तो आप बस इसे एक सरणी में विभाजित कर सकते हैं:
my @lines = split /\n/, $lines; # or whatever
foreach my $line(@lines) {
# do stuff
}
कि शायद पढ़ सकते हैं और लाइन नीचे बनाए रखने के लिए आसान होगा।
मैं एक उपयोगी विकल्प मिल गया है,
यह < > उपयोग नहीं करता है, लेकिन काम करता है के रूप में अगर यह किया
for (split /^/, $lines) {
...
}
यह करने के लिए एक संभावित कारण 'खुला ARGV की चाल है, '<', \ $ default_data जब तक कि @ ARGV' तब '<>' पढ़े तब तक डिफ़ॉल्ट डेटा का उपयोग नहीं करेगा जब तक कि फाइलें पास नहीं हो जातीं। –