C میں Strstr

Strstr C



Strstr () سی زبان میں ایک بلٹ ان فنکشن ہے۔ اگر آپ اوبنٹو پر کام کر رہے ہیں تو strstr کی فعالیت اوبنٹو ٹرمینل میں موجود دستی کے ذریعے قابل فہم ہو سکتی ہے۔ پھر ٹرمینل آپ کو strstr کا گائیڈ دکھائے گا اور یہ کیسے کام کرتا ہے۔

$آدمیstrstr







مثال 1۔

strstr کی پہلی مثال پر غور کریں۔ ہم نے ایک فائل میں کوڈ استعمال کیا ہے۔ اور ہم ٹرمینل میں اس فائل کے ذریعے آؤٹ پٹ حاصل کریں گے۔ جیسا کہ یہ جانا جاتا ہے کہ ان پٹ strstr دو ڈور ہیں ، جس میں ایک سٹرنگ کی موجودگی دوسرے سٹرنگ میں شناخت کی جاتی ہے۔ سب سے پہلے لائبریری ہیڈر۔ string.h استعمال کیا جائے گا جو تار کے بہت سے افعال کو سنبھالتا ہے۔ اگر یہ لائبریری متعارف نہیں کرائی گئی ہے تو ، سٹرنگ فنکشنز کے پروگرام کو چلانا ممکن نہیں ہے۔ اس سورس کوڈ میں استعمال ہونے والا سٹرنگ فنکشن ہے۔



پی۔= strstr (s1،s2)

اس میں ، p ایک پوائنٹر ہے۔ S1 اور S2 دو تار ہیں۔ ہمیں سٹرنگ s1 میں s2 کی موجودگی کو تلاش کرنے کی ضرورت ہے۔ نتائج کو پرنٹ کرنے کے لیے ، ہم نے اس شرط کو لاگو کرنے کے لیے if-else بیان استعمال کیا ہے جو کہ سٹرنگ کی پہلی موجودگی کو چیک کرتا ہے۔ اگر خاص سٹرنگ مین سٹرنگ میں موجود ہے ، تو یہ ایک تصدیقی پیغام کے ساتھ دکھایا جائے گا۔ اگر یہ موجود نہیں ہے ، تو ایک پیغام دکھایا جائے گا۔







مذکورہ اسکرین شاٹ میں ، آپ ایک ان پٹ سٹرنگ دیکھ سکتے ہیں جہاں سے آپ کو چھوٹے سٹرنگ کی شناخت کرنے کی ضرورت ہے۔ اس چھوٹی سٹرنگ کا بھی ذکر کیا گیا ہے اگر بیان پیرامیٹر میں بطور دلیل p لے گا۔ strstr فنکشن اس میں محفوظ ہے۔

اگر آپ لینکس آپریٹنگ سسٹم پر کام کر رہے ہیں اور آؤٹ پٹ حاصل کرنا چاہتے ہیں۔ پھر یہ اوبنٹو ٹرمینل پر ایک دو کمانڈ استعمال کرکے کیا جاسکتا ہے۔ پہلا حکم تالیف کے لیے ہے۔



$GCC –o file9 file9.c

تالیف کے لیے ، ہمیں ایک مرتب کی ضرورت ہے ، جی سی سی لینکس کے لیے استعمال کیا جاتا ہے تاکہ اس پر سی پروگرام مرتب کیا جا سکے۔ -o کا استعمال سورس فائل سے آؤٹ پٹ فائل میں نتیجہ کو محفوظ کرنے کے لیے کیا جاتا ہے۔ اب اگلا مرحلہ پھانسی ہے۔

$./فائل 8

یہ ڈاٹ طریقہ استعمال کرکے مکمل ہوتا ہے۔ جس میں ہم فائل کے نام کے ساتھ ایک ڈاٹ اور سلیش استعمال کرتے ہیں۔

آؤٹ پٹ سے پتہ چلتا ہے کہ سبٹرنگ موجود تھا اور فائل میں اس کا مقام بھی دکھاتا ہے۔

مثال 2۔

یہ ifstr بیان کے استعمال کے بغیر strstr () فنکشن کی ایک اور سادہ مثال ہے۔ اس سی پروگرام میں ، ہم سٹرنگ میں ایک خاص لفظ سے ملیں گے اور پھر اسے لائیں گے کیونکہ یہ لفظ اس کی موجودگی کے مطابق مماثل ہے۔ پھر آؤٹ پٹ میں ، لفظ اور سبٹرنگ کے ساتھ موجود حروف بھی دکھائے جاتے ہیں۔

آؤٹ پٹ = strstr(a ، سرچ سٹرنگ۔)؛

جیسا کہ وقوع کوڈ میں پوائنٹر متغیر کا استعمال کرکے حاصل کیا جاتا ہے۔ چونکہ یہ پوائنٹر سبسٹرنگ کا مقام حاصل کرنے اور سٹرنگ کو دیکھنے کے لیے استعمال ہوتا ہے ، اس لیے ہم آؤٹ پٹ کمانڈ میں بغیر ستارے کے صرف متغیر نام استعمال کرتے ہیں۔ اگر ہم لوکیشن ڈسپلے کرنا چاہتے ہیں ، تو ہم پوائنٹر (ستارے کے ساتھ متغیر) ، یعنی *آؤٹ پٹ استعمال کریں گے۔

آپ اسے آؤٹ پٹ میں دیکھ سکتے ہیں۔ لفظ فنکشن کو بطور متبادل تلاش کیا جانا تھا۔ سٹرنگ کے ساتھ حروف بھی دکھائے جاتے ہیں۔

مثال 3۔

اس کوڈ میں ، ہم سب سے پہلے سب سٹرنگ کی موجودگی کو تلاش کریں گے ، اور پھر اس سٹرنگ کو دوسری سٹرنگ سے بدل دیا جائے گا۔ ایک بار پھر دو تاریں بطور ان پٹ محفوظ رہیں گی۔ ایک بڑا سٹرنگ ہے ، اور دوسرا ایک لفظ ہے جو اس کی موجودگی کا تعین ہونے کے بعد بدل دیا جائے گا۔ کی strstr فنکشن چھوٹی سب سٹرنگ اصل کے ساتھ مماثل ہے۔ اور جب پہلی بار میچ کی بنیاد رکھی جاتی ہے ، تو یہ قیمت واپس کرتا ہے۔ لیکن اس مثال میں ، اس قدر کو مزید تبدیل کر دیا گیا ہے۔ آئیے دیکھتے ہیں کہ یہ کیسے کام کرے گا۔

P = strstr(s1 ، s2۔)؛

جہاں p اس میں موجودگی کی قدر کو محفوظ کرے گا ، S1 اور s2 ان پٹ ڈور ہیں۔

اب ہمارے پاس اس ان پٹ سٹرنگ کی موجودگی کا نقطہ ہے۔ اب ہم اس سٹرنگ کو دوسرے لفظ سے بدل دیں گے۔ یہ if بیان کے جسم میں کیا جاتا ہے۔ اس سے ظاہر ہوتا ہے کہ اگر شرط درست ہے ، لفظ کی بنیاد رکھی گئی ہے ، پھر اس کی جگہ دوسرا لفظ لیا گیا ہے۔ یہ متبادل ایک اور سٹرنگ فنکشن کے ذریعے کیا جاتا ہے۔

Strcpy(p ، strstr)

ہم لفظ کو تبدیل کرنا چاہتے ہیں۔ strstr . جہاں p اس سبٹرنگ کی پہلی موجودگی کا مقام ہے جسے فنکشن نے تبدیل کیا ہے۔ Strcpy () تار میں ان دو الفاظ کی جگہ لے لیتا ہے۔ آؤٹ پٹ اسی مرتب عملدرآمد کے طریقہ کار سے حاصل کیا جائے گا۔

آؤٹ پٹ سے ، آپ دیکھ سکتے ہیں کہ اسٹرنگ کو اب دوسرے لفظ کے ساتھ بدل دیا گیا ہے جسے ہم نے strcpy فنکشن میں بیان کیا ہے۔

مثال 4۔

یہ مثال اسی تصور کو ظاہر کرتی ہے۔ یہاں ہم نے لفظ کے علاوہ ایک سٹرنگ کے طور پر ایک کردار کے طور پر مفت جگہ لی ہے۔ یہ ایک سادہ سی مثال ہے جس میں ہم نے if-statement بھی استعمال نہیں کیا۔ صرف میچ اور ڈسپلے کا تصور لاگو ہوتا ہے۔ ان پٹ کے طور پر دو تار لیے جاتے ہیں۔ اس کے علاوہ ، پیغام پیغام کے ساتھ ظاہر ہوتا ہے۔ کی strstr اسی طرح کام کرتا ہے.

ج= strstr(a ، b)؛

یہاں c متغیر ہے جہاں وقوع کا نقطہ محفوظ کیا جائے گا۔

اب ، ہم پیداوار حاصل کریں گے۔

آؤٹ پٹ سے ، آپ نوٹس کر سکتے ہیں کہ خلا کو بھی اسٹرنگ کے ساتھ شمار کیا جاتا ہے جو ہم نے متعارف کرایا ہے۔

مثال 5۔

یہ مثال پچھلی مثالوں سے بالکل مختلف ہے۔ یہاں ہم نے ایک علیحدہ فنکشن استعمال کیا ہے جس کی کارروائی strstr () مرکزی پروگرام کے بجائے مقابلے میں ، فنکشن کال کے پیرامیٹرز میں اقدار کو بطور دلائل منظور کیا جائے گا۔ اس مثال میں ، ہم نے سبٹرنگ کا ذکر کیا ہے ، اور پروگرام ، عملدرآمد کے بعد ، آؤٹ پٹ میں ویلیو کی بجائے پہلی واردات کی پوزیشن دکھائے گا۔ فنکشن متغیر میں اقدار وصول کرے گا ، اور پھر ہم لاگو کریں گے strstr () ان متغیرات پر if-else بیان کا استعمال دستیابی کو چیک کرنے اور حالت کو درست بنانے کے لیے کیا جاتا ہے اور اگر یہ غلط ہے تو دوسرے حصے میں جائیں۔

چار۔*پوز = strstr(str ، substr)؛

جبکہ p ایک سٹرنگ ہے ، سبسٹریٹر ایک سٹرنگ ہے۔ چار*پوز سٹرنگ میں سبٹرنگ کی پہلی موجودگی کی پوزیشن ہے۔ علامت ' ٪ s 'بیان میں موجود جو ظاہر ہوتا ہے اس کا مطلب ہے کہ ایک سٹرنگ اور پوری تار کو تبدیل کرنا۔ جیسا کہ سبٹرنگ پیرامیٹر میں سٹرنگ سے پہلے موجود ہے۔

اب مرکزی پروگرام کی طرف بڑھ رہے ہیں۔ سب سے پہلے ایک سٹرنگ متعارف کرائی گئی ہے جو فنکشن کال کے ذریعے گزرے گی۔

Find_str(str ، بہترین۔)؛

یہاں ہم نے سٹرنگ کے ساتھ سٹرنگ بھی شامل کی ہے۔ ہر بار ایک نیا سبٹرنگ شامل کیا جاتا ہے۔ دوسری بار ہم نے ایک خالی جگہ کا کردار شامل کیا ہے۔ تیسری بار ، ایک سٹرنگ جو تار کا حصہ نہیں ہے شامل کیا گیا ہے۔ اور آخری میں ، ایک حروف تہجی استعمال کیا جاتا ہے۔

احکامات کا استعمال کریں اور پھر نیچے دیئے گئے نتائج کو دیکھیں۔

یہاں سی پروگرام فنکشن کالز کا نتیجہ ہے۔ پہلے دو اور چوتھے بیانات شرط کو پورا کرتے ہیں ، لہذا جواب ظاہر ہوتا ہے۔ تیسرا حصہ متعلقہ نہیں ہے ، لہذا دوسرا حصہ اسے سنبھالے گا۔

نتیجہ

اس مضمون میں ، کا استعمال۔ strstr مثالوں کے ساتھ بحث کی جاتی ہے۔ یہ مثالیں اس تصور کو کئی طریقوں سے استعمال کرنے میں ظاہر کرتی ہیں۔ سٹرنگ کے افعال لائبریری میں ان کے ہیڈر کی موجودگی میں استعمال میں آسان ہیں۔