PDA

View Full Version : کار بر روی رشته ها(جست و جو ،جدا کردن و جای گذاری)



javad_r_85
شنبه 06 فروردین 1390, 13:01 عصر
سلام

من یه متن دارم مانند زیر



#‡€…‡†#
›ãê
¤÷¦¢ ìõüŠ äþöóóùŠ ƒ„ƒ -#
õø¥© ð‘ô “ù ð‘ô }ASP.NET ({“¤÷‘õù—øþ¨ü “‘ }C . NeT{
(#äþöóóù ›ãê¤÷¦¢ìõü#] øþ¤¨– ƒ[#^a“‘“ñ^bäóøô ¤þ‘÷ù^cˆˆƒ#]€‰…[ «.: ›¢øñ#î—‘“÷
‘õù: «. ]€‰…[#‡šŠ‡«/ …ˆˆ/…€…Š}TK{^aˆˆƒ#„‡/†€€#}BF{#¬êŸùû‘ý ¨¤ø¤ êã‘ñ#õ‘þî¤ø¨‘ê
– øþ¦øñ ¨ü ª‘¤” ¢– ÷–#õ‘þî¤ø¨‘ê– ¢– ÷–#ø’-- ¨‘þ–û‘-- ¯¤Ÿü#¨ü ª‘¤” )¥“‘ö “¤÷‘
õù÷øþ¨ü î‘õ•þø—¤(#^c}978-964-8996-72-2{^d€€€€ ¤þ‘ñ##





در این متن مقداری که بین }{ آکولاد قرار می گیرد متن انگلیسی هست و حالا می خوام در این متن به جای فضای خالی # جای گذاری کنم مانند }C . NeT{ که تبدیل شود به }C # . NeT{
برای اینکار باید چه کار کنم؟؟؟
دوستان لطفا کدهای که میدن را اول تست کنند چون برخلاف ظاهرش یه ذره پیچیده هست یا شایدم واسه من اینجوریه.....

sabloger
شنبه 06 فروردین 1390, 14:44 عصر
یعنی توی این رشته فقط یه فضای خالی(اسپیس) هست، اونم توی کلمه C .Net ؟

ma.rad
شنبه 06 فروردین 1390, 15:01 عصر
سلام متن تون مشخص نیست؟

ehsanara
شنبه 06 فروردین 1390, 15:24 عصر
اگه میخوای توی {} هرچی فضای خالی به # تبدیل شه
مثلا EHSAN {C .Net} {} {EHSAN} {A B C } {No }
تبدیل شه به
EHSAN {C#.Net} {} {EHSAN} {A#B#C#} {No#}


string s = textBox1.Text;
for (int k = 0; k < s.Length; k++)
{
if( s[k].ToString() == "{")
while(s[k].ToString() != "}")
{
if (s[k].ToString() == " ")
{
s = s.Remove(k, 1);
s = s.Insert(k, "#");
}
k++;
}
}

javad_r_85
شنبه 06 فروردین 1390, 17:33 عصر
اگه میخوای توی {} هرچی فضای خالی به # تبدیل شه



دوست عزیز بهتره برنامه را روی متن من تست می کردی جواب نمی ده این راه را رفته بودم







سلام متن تون مشخص نیست؟



متن من به صورت داس می باشد و این اصلا مهم نیست مهم مقداری که بین}{ می باشد هست که به صورت انگلیسی و قابل خواندن هست






یعنی توی این رشته فقط یه فضای خالی(اسپیس) هست، اونم توی کلمه C .Net ؟



نه فضای خالی بازم هست و لی اونجا مهم نیست مهم فضاهای خالی متن بین }{ می باشد

ehsanara
شنبه 06 فروردین 1390, 17:43 عصر
دوست عزیز بهتره برنامه را روی متن من تست می کردی جواب نمی ده این راه را رفته بودم


دوست من این برنامه خودت تست کن
من که هر رقمه تست کردم با چیزی که گفتی درست نوشته بودم
هرجا بین {}، Space باشه به # تبدیل میشه

67915

javad_r_85
شنبه 06 فروردین 1390, 17:52 عصر
سلام
ممنون که این کارو کردید ولی برای من خطا می ده

System.IndexOutOfRangeException was unhandled

اگر امکانش هست برنامه رو ضمیمه کن
با تشکر....

javad_r_85
شنبه 06 فروردین 1390, 17:55 عصر
درست شد



string s = textBox1.Text;
for (int k = 0; k < s.Length; k++)
{
if (s[k].ToString() == "}")
while (s[k].ToString() != "{")
{
if (s[k].ToString() == " ")
{
s = s.Remove(k, 1);
s = s.Insert(k, "#");
}
k++;
}
}

MessageBox.Show(s);




جای آکو لاد های باید عوض می شد نمی دونم واسه شما چطور روی متن من درست کار می کرد در کل ممنون که کمک کردین

ehsanara
شنبه 06 فروردین 1390, 17:58 عصر
67916

برنامه رو تو پست قبلی هم گذاشته بودم

ehsanara
شنبه 06 فروردین 1390, 18:04 عصر
خواهش می کنم
احتمالا Language سیستم شما فارسی هست
جای {} و () و ... رو عوض می کنه