TRE (computing)
ٹی آر ای متن میں پیٹرن میچنگ کے لیے ایک اوپن سورس لائبریری ہے، جو تقریبا سٹرنگ میچنگ کرنے کی صلاحیت کے ساتھ باقاعدہ ایکسپریشن انجن کی طرح کام کرتی ہے۔ اسے ولی لوریکری نے تیار کیا تھا اور اسے 2 شق والے بی ایس ڈی جیسے لائسنس کے تحت تقسیم کیا گیا ہے۔ لائبریری سی میں لکھی گئی ہے اور فنکشن فراہم کرتی ہے جو ان پٹ ٹیکسٹ لائنوں پر تلاش کرنے کے لیے باقاعدہ تاثرات استعمال کرنے کی اجازت دیتی ہے۔ دیگر باقاعدہ اظہار انجنوں سے بنیادی فرق یہ ہے کہ ٹی آر ای متن کے ٹکڑوں کو ایک اندازے کے مطابق ملا سکتا ہے، یعنی یہ فرض کرتے ہوئے کہ متن میں کچھ تعداد میں ٹائپز ہو سکتے ہیں۔ خصوصیات ٹی آر ای تقریبا انداز میں پچھلے ٹکڑے سے ملنے کے لیے "ہدایات" کے اضافے کے ساتھ توسیعی باقاعدہ اظہار نحو کا استعمال کرتا ہے۔ اس طرح کی ہر سمت اس بات کی وضاحت کرتی ہے کہ اس ٹکڑے کے لیے کتنے ٹائپوں کی اجازت ہے۔ لگ بھگ ملاپ لیونشٹین فاصلے کی طرح انجام دیا جاتا ہے، جس کا مطلب ہے کہ ٹائپوں کی تین قسمیں 'تسلیم شدہ' ہیں: ٹی آر ای تین ٹائپوں میں سے ہر ایک کے لیے آزادانہ طور پر لاگت کی وضاحت کرنے کی اجازت دیتا ہے۔ یہ پروجیکٹ کمانڈ لائن یوٹیلیٹی کے ساتھ آتا ہے، جو کہ ایگیپ کا دوبارہ نفاذ ہے۔ اگرچہ لگ بھگ مماثلت کے لیے کچھ نحو توسیع کی ضرورت ہوتی ہے، جب یہ خصوصیت استعمال نہیں کی جاتی ہے، تو ٹی آر ای زیادہ تر دوسرے باقاعدہ اظہار مماثلت والے انجنوں کی طرح کام کرتا ہے۔ اس کا مطلب یہ ہے کہ یہ سخت مماثلت کے لیے لکھے گئے عام باقاعدہ تاثرات کو لاگو کرتا ہے۔ پوزیکس طرز کے باقاعدہ تاثرات سے واقف پروگرامرز کو ٹی آر ای استعمال کرنے کے قابل ہونے کے لیے زیادہ مطالعہ کرنے کی ضرورت نہیں ہے۔ متوقع وقت اور میموری کی کھپت لائبریری کے مصنف کا کہنا ہے کہ مماثلت کے لیے خرچ ہونے والا وقت ان پٹ ٹیکسٹ کی لمبائی میں اضافے کے ساتھ لکیری طور پر بڑھتا ہے، جبکہ مماثلت کے دوران میموری کی ضرورت مستقل ہوتی ہے اور ان پٹ پر منحصر نہیں ہوتی، صرف پیٹرن پر۔ دیگر خصوصیات، جو زیادہ تر باقاعدہ ایکسپریشن انجنوں کے لیے عام ہیں، ریجیکس انجن کے تقابلی جدولوں میں یا اس کے ویب پیج پر ٹی آر ای خصوصیات کی فہرست میں چیک کی جا سکتی ہیں۔ استعمال کی مثال تقریبا مماثل سمتوں کو گھوبگھرالی بریکٹ میں متعین کیا جاتا ہے اور اسے تکراری مقدار سے ممتاز کیا جانا چاہیے (ممکنہ طور پر بریکٹ کھولنے کے بعد ایک جگہ ڈالنے کے ساتھ): (باقاعدہ) {~ 1} \s + (اظہار) {~ 2} جملے "باقاعدہ اظہار" کی مختلف شکلوں سے میل کھاتا ہے جس میں "باقاعدہ" میں ایک سے زیادہ ٹائپ نہیں ہوتا ہے اور "اظہار" دو سے زیادہ نہیں ہوتا ہے ؛ جیسا کہ عام باقاعدہ تاثرات میں "کا مطلب ہے ایک یا زیادہ جگہ والے حروف یعنی۔ روگولر ایکسپریشن ٹیسٹ پاس کرے گا ؛ (اظہار) {5i + 3d + 2s <11} لفظ "ایکسپریشن" سے میل کھاتا ہے اگر ٹائپوں کی کل لاگت 11 سے کم ہے، جبکہ داخل کرنے کی لاگت 5 مقرر کی گئی ہے، حذف کرنے کی لاگت 3 مقرر کی گئی ہے اور کردار کی تبدیلی 2-یعنی۔ 10 کی لاگت دیتا ہے۔ زبان کے بائنڈنگ سی کے علاوہ، ٹی آر ای پرل، ازگر اور ہاسکل کے لیے بائنڈنگ کے ذریعے قابل استعمال ہے۔ یہ آر میں ڈیفالٹ ریگولر ایکسپریشن انجن ہے۔ تاہم اگر پروجیکٹ کراس پلیٹ فارم ہونا چاہیے تو ہر ٹارگٹ پلیٹ فارم کے لیے ضروری علیحدہ انٹرفیس ہوگا۔ نقصانات چونکہ دیگر باقاعدہ ایکسپریشن انجن عام طور پر تقریبا مماثلت کی صلاحیت فراہم نہیں کرتے ہیں، اس لیے تقریبا کوئی ہم آہنگی عمل درآمد نہیں ہے جس کے ساتھ ٹی آر ای کا موازنہ کیا جا سکے۔ تاہم کچھ چیزیں ایسی ہیں جو پروگرامرز مستقبل کی ریلیزز میں نافذ ہوتے دیکھنا چاہیں گے: مماثل متن کے ٹکڑوں کو تبدیل کرنے کے لیے ایک متبادل طریقہ کار (جیسے سیڈ سٹرنگ پروسیسر میں اور باقاعدہ تاثرات کے بہت سے جدید نفاذ، بشمول پرل یا جاوا میں بنایا گیا) ؛ بہتر ٹائپیو ویلیو اسسمنٹ کے لیے ایک اور لگ بھگ مماثل الگورتھم (لیونشٹین کے مقابلے میں) استعمال کرنے کا موقع (مثال کے طور پر ساؤنڈیکس)، یا کم از کم اس الگورتھم کو بہتر بنایا جائے تاکہ "سویپ" قسم کے ٹائپوں کی اجازت دی جا سکے (ڈیمیرو-لیونشٹین فاصلہ دیکھیں)۔ یہ بھی دیکھیں لیونشٹین آٹومیٹن باقاعدہ اظہار انجنوں کا موازنہ ایگریپ حوالہ جات بیرونی لنکس ٹی آر ای-مفت اور پورٹیبل تقریبا باقاعدہ اظہار مماثل لائبریری مزید پڑھنا کمپیوٹر لائبریریاں بی ایس ڈی لائسنس کا استعمال کرتے ہوئے باقاعدہ اظہار سافٹ ویئر