البرمجة

استخدام Perl لطباعة القيم المتطابقة في عمود معين

في بيئة برمجة Perl، يمكنك استخدام الكود التالي لقراءة الملف وطباعة القيم التي تحقق الشرط المطلوب:

perl
#!/usr/bin/perl use strict; use warnings; # افتح الملف للقراءة open my $file, '<', 'sample.txt' or die "Could not open file: $!"; # هيكل البيانات لتخزين القيم my %data; # قراءة السطور من الملف while (my $line = <$file>) { chomp $line; # تقسيم السطر إلى أعمدة my ($col1, $col2, $col3) = split ' ', $line; # تخزين القيم في هيكل البيانات push @{$data{$col2}}, [$col1, $col3]; } # إغلاق الملف close $file; # طباعة القيم التي تحقق الشرط foreach my $key (sort keys %data) { my $values = $data{$key}; # التحقق مما إذا كانت القيم متطابقة في العمود الأول my $first_value = $values->[0][0]; my $match = 1; foreach my $pair (@$values) { unless ($pair->[0] eq $first_value) { $match = 0; last; } } # إذا كانت القيم متطابقة، قم بطباعتها if ($match) { foreach my $pair (@$values) { print "$pair->[0] $key $pair->[1]\n"; } } }

يقوم هذا الكود بقراءة الملف النصي وتنظيم البيانات في هيكل مناسب. ثم يتم فحص كل قيمة في العمود الثاني للتحقق مما إذا كانت القيم في العمود الأول متطابقة. إذا كانت متطابقة، يتم طباعة القيم. الناتج المتوقع يكون:

mathematica
1 D Z 1 E F 1 G L

المزيد من المعلومات

في سياق لغة البرمجة Perl، يعد الكود الذي تم توفيره سابقًا نموذجًا لكيفية التعامل مع ملفات النص وتنظيم البيانات لتحقيق الغرض المحدد. لنقم بتوضيح بعض الجوانب الرئيسية في هذا السياق.

أولًا وقبل كل شيء، يتم فتح الملف باستخدام الدالة open ويتم التحقق من نجاح العملية باستخدام die في حالة فشل الفتح. بعد ذلك، يتم استخدام دورة while لقراءة السطور من الملف باستخدام <$file>، ويتم استخدام chomp لإزالة أي أحرف ترجيع السطر.

ثم يتم تقسيم كل سطر إلى أعمدة باستخدام split، وتخزين القيم في هيكل البيانات المناسب، الذي يستخدم هنا على شكل تجميعات من مصفوفات.

بعد الانتهاء من قراءة الملف وتنظيم البيانات، يتم فحص القيم في العمود الثاني ($col2) للتحقق مما إذا كانت القيم في العمود الأول ($col1) متطابقة. إذا كانت متطابقة، يتم طباعة القيم المطابقة.

كل هذه الخطوات تشير إلى كيفية استخدام لغة البرمجة Perl بشكل فعّال لتحليل ومعالجة بيانات من ملف نصي. يُشير الكود إلى مفهوم الهيكل البياني والتحقق من الشروط المطلوبة قبل الطباعة.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر