View Full Version : سوال: از بین بردن حساسیت حروف کوچک و بزرگ در تابع Pos
Mask
یک شنبه 28 فروردین 1390, 23:28 عصر
با سلام
چطور میتونم این حساسیت رو از بین ببرم ... که نمونه زیردر حالت ali و Ali و AlI و aLi و ...
جواب yes رو برگردونه.
ممنون.
var i:byte;
begin
i:=POS('ali',Edit1.Text);
if i<>0 then
ShowMessage('Yes')
else
ShowMessage('No');
end;
mohsen24000
یک شنبه 28 فروردین 1390, 23:39 عصر
var i:byte;
s:string;
begin
s:=Edit1.Text;
i:=POS('ali',LowerCase(s));
if i<>0 then
ShowMessage('Yes')
else
ShowMessage('No');
end;
Mahmood_M
دوشنبه 29 فروردین 1390, 00:08 صبح
حروف کوچک و بزرگ دو حروف متفاوت هستند و کد اسکی متفاوتی دارند ، برای حل مشکلتون می تونید ابتدا تمام حروف رو کوچک یا تمام حروف رو بزرگ کنید و بعد جستجو رو انجام بدید ، مثال :
var
I : Integer;
begin
I := Pos('ALI', UpperCase(Edit1.Text));
if I <> 0 then
ShowMessage('Yes')
else
ShowMessage('No');
end;
تابع UpperCase تمام حروف متن ورودی رو بزرگ میکنه و متن حاصل ( با حروف بزرگ ) رو برگشت میده ، تابع LowerCase هم برای کوچک کردن حروف استفاده میشه .
اگر متن اول ( در اینجا " Ali " ) هم مشخص نیست می تونید مثلا به این صورت عمل کنید :
I := Pos(UpperCase(Edit1.Text), UpperCase(Edit2.Text));
if I <> 0 then
ShowMessage('Yes')
else
ShowMessage('No');
دستور بالا مکان متن درون Edit1 رو درون Edit2 مشخص میکنه .
موفق باشید ...
ویرایش : جوابها همزمان شد !
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.