نمایش نتایج 1 تا 8 از 8

نام تاپیک: کار با substring و indexof

  1. #1

    Question کار با substring و indexof

    با عرض سلام و احترام خدمت تمام دوستان.
    یک قطعه کد ساده نوشتم که درون تکس باکس وقتی کاربر نام و نام خانوادگی خود را تایپ کرد در دو لیبل نمایش بدهد و هر چه فاصله اول اخر ان است را ندیده بگیرد و تنها یک فاصله بین نام نام خانوادگی را درنظر بگیرد و بقیه ی ان را با trim حذف کند؛ کد بنده کار میکند اما وقتی بعد از نام خانوادگی یک فاصله میزارم باید ندیده بگیرد که نمیگیرد؛ به نظرم Trim اصلا کار نمیکنه چون اول نام هم فاصله میزارم ؛فاصله کار میکنه؛ ممنون میشم اگر که اشکال کدم را بگید.
    با تشکر.
    string str = textBox1.Text;
    str.Trim();
    int i = textBox1.Text.Length;
    int j = str.LastIndexOf(" ");
    str.Trim();
    label1.Text = str.Substring(j+1);
    label2.Text = str.Substring(0, j);

  2. #2
    مدیر بخش آواتار danialafshari
    تاریخ عضویت
    تیر 1387
    محل زندگی
    هر کجا هستم باشم آسمان مال من است
    پست
    2,909

    نقل قول: کار با substring و indexof

    سلام
    این همه کد برای چیه؟
    string str=textBox1.Text.TrimStart(); // Ebteda

    string str=textBox1.Text.TrimEnd(); // Enteha

    string str=textBox1.Text.Trim(); // har 2 taraf

  3. #3
    کاربر دائمی آواتار abdullah20
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    اصفهان
    پست
    1,211

    نقل قول: کار با substring و indexof

    برای حذف فاصله ها از ابتدا و انتها و قرار دادن فقط یک فاصله در بین نام و نام خانوادگی از کد زیر استفاده کنید
    textBox1.Text = Regex.Replace(textBox1.Text, @"\s+", " ").Trim() ;

  4. #4

    نقل قول: کار با substring و indexof

    دوستان ممنونم از پاسختون اما من میخوام نام و نام خانوادگی را از هم تفکیک کنم و در دو برچسب نمایش بدم. که از split استفاده کردم اونم جواب درستی نداد. باید از substring استفاده کرد؛ سوال اینه کدم کجاش مشکل داره??؟؟

  5. #5

    نقل قول: کار با substring و indexof

    دوست دارم بدونم مشکل کده خودم چی بوده که گفتم هر چی فاصله اول و اخر تکس باکس است بردار بعد طولش رو بدست میاره و اندیس اولین فاصله از اخر بدست میاره و بعد دوباره هر چی فاصله هست برمیدارد(بین نام نام خانوادگی) و بعد هم چاپ میکنه.
    و اما جناب abdullah20 کد شما با کمی تغییرات جواب داد به صورت :
                textBox1.Text = Regex.Replace(textBox1.Text, @"\s", " ").Trim();
    string str = textBox1.Text;
    int i= str.LastIndexOf(" ");
    label1.Text = str.Substring(0, i);
    label2.Text = str.Substring(i + 1);

  6. #6
    کاربر دائمی آواتار abdullah20
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    اصفهان
    پست
    1,211

    نقل قول: کار با substring و indexof

    کد شما باز هم اشکال داره
    برای این که وقتی کاربر نام و نام خانوادگی را در تکس باکس وارد کرد نام را در یک لیبل و نام خانوادگی را در لیبل دیگر نمایش بدید میتونید از کد زیر استفاده کنید:
                string[] words = Regex.Replace(textBox1.Text, @"\s+", " ").Trim().Split(' ');
    label1.Text = words[0];
    label2.Text = words[1];


    ولی در اینجا مثلا اگر " عبداله اسکندری " را وارد کنید مشکلی نیست جون دو قسمت هستش و به خوبی کار میکنه ولی اگر نام و نام خاوادگی چند قسمت بود مثلا " محمد رضا رسولی نژاد" شما از کجا میخواید متوجه بشید که کدوم قسمت اسم و کدوم قسمت نام خانوادگی هستش؟

  7. #7

    نقل قول: کار با substring و indexof

    به این موضوع هم فکر کردم اما فعلا متاسفانه به نتیجه ای نرسیدم بین محمدرضا برفرض کاربر فاصله نزنه اما رسولی نژاد امکانش نیست :(

  8. #8
    کاربر دائمی آواتار mhsmity
    تاریخ عضویت
    مهر 1387
    محل زندگی
    استان يزد
    سن
    36
    پست
    671

    نقل قول: کار با substring و indexof

    سلام اگه رشته وردی بیش از حد فاصله داشته باشه رو درست می کنه.
    مثلا " محمد علی حسین اکبر "

    خروجی ="محمد علی حسین اکبر"

            string DelSpaceInString(string StrName)
    {
    string re = "";
    string[] str = StrName.Trim().Split(' ');
    foreach (string s in str)
    {
    if (s != "")
    re += s+ " ";
    }
    return re.Trim();
    }


    از دوستان کسی هست که برای این رشته تابع اصلاح کننده بنویسه. یعنی بین اسم ها یک فاصله ایجاد کنیم.

    " محمدمیلادحسین "
    خروجی ="محمد میلاد حسین"
    آخرین ویرایش به وسیله mhsmity : پنج شنبه 25 مهر 1392 در 00:10 صبح

تاپیک های مشابه

  1. چگونه دانش دلفی را برای یادگیری ویژوال بیسیک به کار بگیریم..
    نوشته شده توسط RezaBS در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 2
    آخرین پست: سه شنبه 21 شهریور 1391, 22:42 عصر
  2. کار با اسکنر USB
    نوشته شده توسط در بخش برنامه نویسی در Delphi
    پاسخ: 1
    آخرین پست: چهارشنبه 23 آذر 1384, 15:41 عصر
  3. میخوام با صدا کار کنم . کسی هست کمک کنه
    نوشته شده توسط Rabinhood در بخش برنامه نویسی در Delphi
    پاسخ: 2
    آخرین پست: دوشنبه 22 دی 1382, 17:44 عصر
  4. توابع کار با string ها
    نوشته شده توسط Farhad.B.S در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 1
    آخرین پست: شنبه 20 اردیبهشت 1382, 23:17 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •