فهرست مطالب
چکیده
در این فصل در باره اینها صحبت خواهیم نمود:
کاربرد عبارتهای منظم
فوق کاراکترهای عبارت منظم
یافتن الگوه در خروجی یا فایلها
محدودهها و کلاسهای کاراکتر درBash
یک عبارت منظم الگویی است که مجموعهای از رشتهها را توصیف میکند. با استفاده از عملگرهای متنوع برای ترکیب عبارتهای کوچکتر، عبارتهای منظم به طور قابل قیاسی مطابق عبارتهای حسابی ساخته شدهاند.
بنیاد ساخت بلوکها،عبارتهای منظمی هستند که با یک کاراکتر منفرد منطبق میشوند. اکثر کاراکترها، همه حروف و ارقام، عبارتهای منظمی هستند که با خودشان منطبق میگردند. هر کاراکتر عام با معنی ویژه، میتواند با تقدم کاراکتر \ نقل بیان گردد.
یک عبارت منظم ممکن است با یکی از چند عملگر تکرار دنبال شود (فوق کاراکترها):
جدول 4.1: عملگرهای عبارت منظم
عملگر | کار مؤثر |
---|---|
. | بر یک کاراکتر منفرد منطبق میشود. |
? | حداکثر بر یک مورد منطبق میشود، وجود عبارت قبل از آن اختیاری است . |
* | عبارت قبل از آن، صفر یا چند مرتبه منطبق میشود. |
+ | عبارت قبل از این کاراکتر یک یا چند مرتبه منطبق میشود. |
{N} | عبارت قبل از آن دقیقاً N مرتبه تطبیق مییابد. |
{N,} | عبارت قبل از آن N مرتبه یا بیشتر منطبق میگردد . |
{N,M} | عبارت قبل از آن، حداقل N مرتبه و حداکثر M مرتبه منطبق میگردد. |
- | اگر اول یا آخر یک لیست و یا نقطه انتهایی یک محدوده در یک لیست نباشد، بیانگر یک محدوده میباشد. |
^ | با یک رشته تهی در ابتدای یک سطر منطبق میگردد، همچنین بیانگر کاراکترهایی است که در یک محدوده از یک لیست نمیباشند. |
$ | با یک رشته تهی در انتهای یک سطر منطبق میگردد. |
\b | با یک رشته تهی در مرز یک کلمه منطبق میگردد. |
\B | با یک رشته تهی که در مرز یک کلمه نباشدمنطبق میگردد. |
\< | با یک رشته تهی در ابتدای یک کلمه منطبق میشود. |
\> | با یک رشته تهی در انتهای یک کلمه منطبق میشود. |
دو عبارت منظم میتوانند با هم متصل شوند، عبارت منظم حاصل شده با هر رشته شکل گرفته از الحاق دو زیر رشتهای که به ترتیب با دو عبارت کوچکتر منطبق میشوند، انطباق مییابد.
دو عبارت منظم می توتنند با عملگر “|” در میان آنها به هم وصل شوند، عبارت منظم حاصل، با هر رشتهای که با یکی ازعبارتهای کوچکتر منطبق گردد،انطباق مییابد.
تکرار بر الحاق اولویت دارد، که هر یک ازآنها به جایگزینی تقدم دارد. تمام یک عبارت کوچکتر میتواند در پرانتزها محصور گردد، که به این ترتیب این قوتعد تقدم چشمپوشی میگردد.