PDA

View Full Version : سوال: تغییر یک مقدار در متغیر



loo30fer
شنبه 21 خرداد 1390, 23:50 عصر
با سلام
با چه تابعی میشه یک مقدار رو توی یک متغیر رشته ای عوض کرد برای مثال من میخوام مقدار دوم رو توی متغیر Str که توی این متغیر B هست رو با عدد 9 عوض کنم؟؟؟

var
Str,Replace: String;
begin
Str:= 'ABCDEFG';
Replace:= '9';

Mahmood_M
یک شنبه 22 خرداد 1390, 00:05 صبح
با استفاده از تابع StringReplace
var
Str : String;
begin
Str := 'Mahmood_M';
Str := StringReplace(Str, '_M', '_N', []);
ShowMessage(Str);
end;
برای آشنایی بیشتر با این تابع ، این لینک (http://www.delphibasics.co.uk/RTL.asp?Name=StringReplace) رو ببینید

موفق باشید ...

loo30fer
یک شنبه 22 خرداد 1390, 00:24 صبح
ممنون جنابMahmood_N ولی همینطور که گفتم میخوام بر اساس مقداری که میدم با کارکتری که میگم جایگزین کنم مثلا بگم کارکتر نهم که تو متغیر Str میشه M رو با کارکتر N جایگزین کنم که یکجورایی میشه بدین شکل :
var
Str,Replace: String;
begin
Str := 'Mahmood_M';
Replace:= '9';
Str := StringReplace(Str[9], 'N', []);
end;
آیا تابعی یا راهی وجود داره ؟؟؟

mbshareat
چهارشنبه 25 خرداد 1390, 01:09 صبح
با سلام
آیا اگه بخواهیم بخشی از رشته رو که تنها میدونیم از کجا شروع و با چه طولی ادامه داره با رشته دیگه ای با طول متفاوت جایگزین کنیم، راه سر راست تر از ترکیب Delete و Insert داریم؟(چیزی مثل (Replace(SubStr,DestStr,Start,Length!)

Felony
چهارشنبه 25 خرداد 1390, 08:17 صبح
با سلام
آیا اگه بخواهیم بخشی از رشته رو که تنها میدونیم از کجا شروع و با چه طولی ادامه داره با رشته دیگه ای با طول متفاوت جایگزین کنیم، راه سر راست تر از ترکیب Delete و Insert داریم؟(چیزی مثل (Replace(SubStr,DestStr,Start,Length!)
تابع آماده ای وجود نداره ، میتونید تابعی به صورت زیر بنویسید :

function Replace(const SubStr, DestStr: string; const Start, Length: Integer): String;
var
i: Integer;
begin
Result := DestStr;
Delete(Result, Start, Length);
Insert(SubStr, Result, Start);
end;

استفاده :
var
Str: String;
begin
Str := 'Test';
Str := Replace('Hasan', 'My name is ali', 12, 3);
ShowMessage(Str);
end;

zidane
چهارشنبه 25 خرداد 1390, 12:57 عصر
با سلام
با چه تابعی میشه یک مقدار رو توی یک متغیر رشته ای عوض کرد برای مثال من میخوام مقدار دوم رو توی متغیر Str که توی این متغیر B هست رو با عدد 9 عوض کنم؟؟؟

var
Str,Replace: String;
begin
Str:= 'ABCDEFG';
Replace:= '9';

تابع لازم نداره!!!
مي تونيد بنويسيد:
Str[2]:='9';

با استفاده از تابع StuffString از يونيت StrUtils هم مي تونيد هر قسمت از رشته رو با متن مورد نظرتون جايگزين كنيد