پیدا کردن یک رشته (string) درون رشته ای دیگر، با دستور strfind در متلب
با استفاده از دستور strfind در متلب، می توانیم یک رشته (string) را درون رشته ای دیگر بیابیم. دستور strfind ، چنانچه رشته مورد نظرمان را در رشته دیگر بیابد، موقعیت اولین کاراکتر آن را برمی گرداند، مثلا اگر سه بار در آن رشته به کار رفته باشد، سه عدد را برمی گرداند که هر عدد، موقعیت اولین کاراکتر یکی از تکرارها می باشد.
به مثال زیر توجه کنید :
یک رشته داریم که می خواهیم ببینیم که آیا رشته kelid در آن به کار رفته یا خیر و اگر به کار رفته، موقعیت آن در رشته چگونه است :
close all
clc
A=strfind('kelidestan.com kelid kelidestan.com', 'kelid')
سه خط اول کدها، برای عدم تداخل برنامه فعلی با برنامه های قبلی اجرا شده در متلب می باشد.
نتیجه :
1 16 22
چون رشته kelid ، سه بار در رشته دیگر به کار رفته است، بنابراین دستور strfind ، سه عدد را برگردانده است که موقعیت اولین کاراکتر هر یک از آنها را نشان می دهد.
این بار حالتی را در نظر می گیریم که اصلا رشته مورد نظرمان، در رشته دیگر به کار نرفته باشد :
close all
clc
A=strfind('kelidestan.com', 'hello')
نتیجه :
[]
مشاهده می کنید که دستور strfind ، مقدار تهی را برگردانده است (A برابر یک ماتریس تهی خواهد بود).