RE2 (software)
آر ای 2 ایک سافٹ ویئر لائبریری ہے جو آٹومیٹا تھیوری کا استعمال کرتے ہوئے ایک محدود ریاستی مشین کے ذریعے باقاعدہ تاثرات کے لیے ہے، تقریبا دیگر تمام باقاعدہ اظہار لائبریریوں کے برعکس، جو بیک ٹریکنگ نفاذ کا استعمال کرتے ہیں۔ یہ ایک C + + انٹرفیس فراہم کرتا ہے۔ آر ای 2 کو گوگل نے لاگو اور استعمال کیا تھا۔ پی سی آر ای آر ای 2 سے موازنہ عام طور پر کارکردگی میں پرل کمپیٹیبل ریگولر ایکسپریشنز (پی سی آر ای) سے موازنہ کرتا ہے۔ کچھ باقاعدہ اظہار آپریٹرز جیسے | (منطقی اختلاط یا بولین "یا") کے لیے یہ پی سی آر ای سے زیادہ ہے۔ دوسری طرف، آر ای 2 بیک حوالہ جات کی حمایت نہیں کرتا ہے اور ان کو مؤثر طریقے سے نافذ نہیں کر سکتا ہے۔ یہ پیرنتھیٹک کیپچرنگ آپریشنز کے لیے پی سی آر ای سے بھی قدرے سست ہے۔ پی سی آر ای متعلقہ اعلی میموری کے استعمال کے ساتھ ایک بڑے تکراری اسٹیک کا استعمال کر سکتا ہے اور بعض نمونوں پر تیز رفتار رن ٹائم رکھتا ہے۔ اس کے برعکس، آر ای 2 ایک فکسڈ اسٹیک کا استعمال کرتا ہے اور اس بات کی ضمانت دیتا ہے کہ رن ٹائم ان پٹ کے سائز کے ساتھ لکیری طور پر (تیزی سے نہیں) بڑھتا ہے۔ آر ای 2 کے ساتھ مختص کردہ زیادہ سے زیادہ میموری قابل ترتیب ہے۔ آر ای 2 میں پی سی آر ای کے مقابلے میں خصوصیات کا تھوڑا سا چھوٹا سیٹ ہے، لیکن اس میں بہت متوقع رن ٹائم اور زیادہ سے زیادہ میموری الاٹمنٹ ہے۔ یہ اسے سرور ایپلی کیشنز میں استعمال کے لیے موزوں بناتا ہے، جس کے لیے میموری کے استعمال اور کمپیوٹیشنل وقت پر حدود کی ضرورت ہوتی ہے۔ دوسری طرف پی سی آر ای میں تقریبا وہ تمام خصوصیات ہیں جو ایک باقاعدہ ایکسپریشن لائبریری میں ہو سکتی ہیں، لیکن اس میں غیر متوقع رن ٹائم اور میموری کا استعمال ہوتا ہے اور یہ بے حد بڑھ سکتا ہے۔ گوگل پروڈکٹس میں استعمال RE2، مثال کے طور پر، گوگل پروڈکٹس جیسے جی میل، گوگل ڈاکیومنٹس اور گوگل شیٹس کے ذریعے استعمال ہوتا ہے۔ نحو: RE2 نحو کی دستاویزات کے لیے گٹ ہب دیکھیں۔ گوگل شیٹس میں، یہ ریجیکس میچ ()، ریجیکس ریپلیس ()، ریجیکس ایکسٹریکٹ () اور فائنڈ اینڈ ریپلیس فیچر میں استعمال ہوتا ہے۔ ریجیکس ایکسٹریکٹ ()، گروپنگ کا استعمال نہیں کرتا ہے۔ یہ بھی دیکھیں کہ باقاعدہ اظہار انجنوں کا موازنہ حوالہ جات باقاعدہ اظہار سافٹ ویئر بی ایس ڈی لائسنس کا استعمال کرتے ہوئے