خانه » برنامه نویسی » ارجاع به عقب(Backreference) در عبارت‌های منظم

ارجاع به عقب(Backreference) در عبارت‌های منظم

ارجاع به عقب(Backreference) در عبارت‌های منظم

دانستن عبارت‌های منظم( Regular Expressions ) در برنامه‌نویسی روند توسعه‌ی نرم‌افزار را سرعت چشم‌گیری می‌بخشد.

یکی از نکته‌های کمتر شناخته‌شده در این عبارت‌ها، ارجاع به عقب است که می‌تواند در شناسایی رشته‌های مورد نظر کمک بزرگی به حساب آید.

بهترین مثال قابل اشاره، تگ‌های موجود در HTML است. فرض کنید می‌خواهیم عبارت‌هایی که با IFLashLord آغاز می‌شوند و تگ محصور کننده‌ی آن را جستجو کنیم:

<span>IFLashLord 1</span>
<div>IFLashLord 2</div>
<h1>IFLashLord 3</h1>
<p>IFLashLord 4</p>

برای انجام این کار، می‌توان از ارجاع به عقب بهره گرفت:

<([a-z][a-z0-9]+)>IFLashLord.+?</\1>

ارجاع به عقب در حقیقت استفاده‌ی مجدد از بخش‌های یافته‌شده‌ی قبلی است. در مثال بالا، عبارت ’۱\’ یک ارجاع به عقب است. این ارجاع معادل متغیر یافته شده در پرانتز ابتدایی است.
هر مقداری که در پرانتز ابتدایی یافته شود، در این ارجاع نیز کپی خواهد شد. برای دسترسی به متغیرهای دوم تا نهم کافی‌است از عبارت‌های ’۲\’ تا ’۹\’ استفاده کنید.

به علامت سوال «?» پس از +. توجه کنید. به کار بردن این علامت سوال سبب می‌شود تا کوتاه‌ترین عبارت ممکن جستجو و در نتیجه، تگ انتهایی به درستی انتخاب شود.

Print Friendly, PDF & Email
تگ ها :
پیوند مطلب قبلی
پیوند مطلب بعدی

درباره بهروز پولادرگ

متولد : ۵ مرداد سال ۱۳۶۷ ، حرفه : ادوبی فلش ، برنامه نویسی و طراحی وب ، طراحی گرافیک ، مالتی مدیا ، نرم افزار های تحت وب

ارسال جواب

آدرس رایانامه شما منتشر نخواهد شد.فیلد های اجباری علامت گزاری شده اند *

*

رفتن به بالای صفحه