PDA

View Full Version : سوال: عوض کردن جای کلمات



ZivehDesigne
سه شنبه 24 دی 1392, 22:47 عصر
سلام دوستان!

من تو یک برنامه باید جای کلمات را عوض کنم مثلا: Ahmad Safavi = Safavi Ahmad

تکه کد زیر رو نوشتم نمی دونم کجا مشکل داره فقط کلمه اولو تکرار می کنه ممنون میشم راهنماییم کنید...


string M;
string S;
S =null;
M = TextBox1.Text;
string[] a = M.Split();
string[] b = new string[a.Length];
for (int i=a.Length-1;i>=0;i--)
{
for (int j=0;j<=a.Length-1;j++)
{
b[j]=a[i];
}
}

for (int i = 0; i <= a.Length-1; i++)
{
S = S + " " + b[i];
}
TextBox2.Text =S;

Ahmad Chehreghani
سه شنبه 24 دی 1392, 22:54 عصر
از این کد استفاده کنید:
TextBox2.Text =M.Replace("Ahmad Safavi", "Safavi Ahmad");

ZivehDesigne
سه شنبه 24 دی 1392, 23:13 عصر
از این کد استفاده کنید:
TextBox2.Text =M.Replace("Ahmad Safavi", "Safavi Ahmad");
خیلی ممنون دوست عزیز ولی من نمی دونم قراره تو تکست باکس چه مقداری وارد بشه باید بصورت خودکار هرچند کلمه داخل تکست باکس وجود داشته باشه رو از اول به آخر جای اونهارو باهم عوض کنه مثل این:
Ahmad Mohamad Reza afshin = afshin Reza Mohamd Ahmad

Ahmad Chehreghani
چهارشنبه 25 دی 1392, 07:24 صبح
اگه قراره چند کلمه رو با چند کلمه دیگه عوض کنه. شما کلمات را داخل یک آرایه یا لیست بریز و یک حلقه ره تعداد آرایه با دستور بالا بزن. فقط جای M در بالا رو با Textbox2.Text عوض کنید.
موفق باشید.

Davidd
چهارشنبه 25 دی 1392, 07:47 صبح
اگه مرز كلمات با space مشخص ميشه با دستور زير ميتوني آرايه تمام كلمات رشته رو بدست بياري و بعدش اگه عناصر داخل آرايه از انتها به ابتدا با هم جمع شوند چينش كلمات برعكس ميشه :

string yourstring = "Ahmad Mohamad Reza afshin";
string[] words = yourstring.Split(' ');
string newstring = "";
for (int i = words.Length-1; i >=0; i--)
newstring = newstring + " " + words[i];

Ahmad Chehreghani
چهارشنبه 25 دی 1392, 09:22 صبح
مثل اینکه من متوجه سوالتون نشدم.

اگر قراره کلمات رو به صورت برعکس چینش کنید از کد زیر استفاده کنید :


string yourstring = "Ahmad Mohamad Reza afshin";
string[] words = yourstring.Split(' ');
Array.Reverse(words);
var newstr = string.Join(" ", words);

موفق باشید.

boveiryghasem
چهارشنبه 25 دی 1392, 09:23 صبح
سلام فکر کنم این بدردت بخوره اسم و فامیل رو از TextBox1 میخونه بعد اونها رو جابجا میکنه میریزه توی TextBox2 :

private void button1_Click(object sender, EventArgs e)
{
string fullName = "";
fullName = textBox1.Text;

var names = fullName.Split(' ');
string firstName = names[0];
string lastName = names[1];

textBox2.Text = lastName + " " + firstName;
}

ZivehDesigne
چهارشنبه 25 دی 1392, 09:50 صبح
خیلی ممنون از لطف همگی 1دنیا ممنون...