PDA

View Full Version : الگوریتم تطابق الگو یا همون جستجو در رشته



kooroshekabir
جمعه 08 آبان 1388, 04:43 صبح
سلام
کسی می دونه الگوریتم جستوجو در رشته یا همون تطابق الگو ناث پرات موریس چیه؟؟؟
اگر کسی می دونه لطفا الگوریتمش رو بزاره
ممنون

Salar Ashgi
جمعه 08 آبان 1388, 10:10 صبح
تا اونجایی که من میدونم مربوط میشه به الگوریتم جستجوی یک رشته در داخل رشته دیگر ،

که الگوریتمی بسیار بهینه و کاربردی میباشد !!!

برای یافتن الگوریتم به کتاب ساختمان داده ها - Horowitz ، مراجعه کنید .

موفق باشید !

pswin.pooya
جمعه 08 آبان 1388, 19:44 عصر
سلام
برای جستجو موثر داخل یه رشته از عبارات منظم استفاده کن. تاپیک زیر قواعدش رو گفته:
http://www.barnamenevis.org/forum/showthread.php?t=139020

و میتونی از کتابخونه boost.regex برای جستجو داخل رشته استفاده کنی:
http://www.boost.org/

و این هم یه مثال:

boost::regex r ("((http|ftp|https):\/\/)?(www\\.)?\\b([a-zA-Z0-9-]+\\.)+[a-zA-Z]{2,4}");

while (strcmp(w,"exit"))
{
cin.getline(w,256);

if ( boost::regex_match(w,r))
{
cout<< "is valid" << endl;
}
else
{
cout<< "error: is not valid" << endl;
}
}


این برای بررسی تطبیق آدرس وب سایت درست (بررسی صحت) هستش. فقط باید بهش یه try/catch هم اضافه کنی که اگر عبارت نادرست بهش دادی برنامه کرش نکنه.

mahansh
یک شنبه 24 اسفند 1393, 17:00 عصر
با سلام کسی برنامه الگوریتم اول تطبیق الگو و دوم تطبیق الگو را میدونه؟