منبع اصلی نوشتار زیر در این لینک قرار دارد

به راحتی آب خوردن Regular Expression بنویسید!

اگر برنامه نویس بوده باشید بارها پیش اومده که بخواهید از Regular Expression استفاده کنید و همونطور که میدونید این عبارات باقاعده فهمشون و نوشتنشون خیلی سخته و باید خیلی تو کارتون وارد باشید که بخواهید از حفظ اونها را بنویسید.

Regular expression

یک برنامه‌نویس خوش‌فکر و خوش‌سلیقه اومده یک کتابخونه به نام VerbalExpressions به زبان‌های مختلف نوشته که کار نوشتن عبارات باقاعده را خیلی آسون‌تر و قابل فهم‌تر کرده. شما با استفاده از این کتابخونه میتوانید با استفاده از توابع و دستورات قابل فهم برای انسان، عبارات با قاعده تولید کرده و تو اپلیکیشن‌هاتون ازش استفاده کنید. این پروژه توی گیت‌هاب قرارداره و شما میتونید با توجه به زبان برنامه‌نویسی که استفاده می‌کنید، کتابخونه مخصوصتونو دانلود کرده و استفاده کنید.

بیاییم به چند تا مثال از این کتابخونه خوشمزه بپردازیم:

اولین کاری که شما باید بکنید اینه که فایل مربوط به کتابخونه رو تو پروژه‌تون صدا بزنید. ما برای این مطلب از کتابخونه جاوااسکریپت VerbalExpressions استفاده می‌کنیم. برای این کار کافیه به وسیله خط زیر کتابخونه رو تو پروژه‌تون صدا بزنید:

<script type="text/javascript" src="VerbalExpressions.js"></script>

سپس کد توی کدمون خودکتابخونه رو صدا زده و ازش یه شی می‌سازیم:

var VerEx = require("verbal-expressions");

حالا میخواهیم یک عبارت باقاعده بنویسیم که کار اعتبارسنجی URL وب‌سایت را انجام بده، به صورت معمولی باید یه همچین عبارت باقاعده‌ایو بنویسیم:

/^(http)(s)?(://)(www.)?([^ ]*)$/

ولی با استفاده از VerbalExpressions به این صورت عمل میکنیم:

// اعتبار سنجی Url
var tester = VerEx()
            .startOfLine()
            .then( "http" )
            .maybe( "s" )
            .then( "://" )
            .maybe( "www." )
            .anythingBut( " " )
            .endOfLine();

// یک url واسه آزمایش
var testMe = "https://www.google.com";

// تست آدرس به وسیله تابع test() که در شی tester وجود دارد.
if( tester.test( testMe ) ) alert( "We have a correct URL "); // This output will fire
else alert( "The URL is incorrect" );

console.log( tester );

همونطور که تو کد بالا هم میبینید، این کتابخونه و توابعش به زبان طبیعی انسان بسیار نزدیکه و از اینرو کاملا قابل فهم می‎باشد.

حالا یه مثال دیگه که این یکی در مورد Replace کردن یک متن به وسیله regula expression هست:

var result = VerEx().find( "red" ).replace( "We have a red house", "blue" );
alert( result ); // Outputs "We have a blue house"

برای دانلود کتابخونه VerbalExpressions به زبانهای javaScript , PHP, Python, C#,Java, c++, Objective-c , Ruby بهمحل پروژه بر روی گیت‌هاب مراجعه کنید.

مستندات VerbalExpressions



برچسب ها : , , ,