PDA

View Full Version : بزرگ کردن حروف اول کلمات در متن انگلیسی



samiasoft
دوشنبه 02 مرداد 1396, 18:03 عصر
سلام دوستان

درواقع من میخواستم در یک متنی که داخل تکست باکس وجود داره حروف اول کلمات کوچک انگلیسی رو با حروف بزرگ جایگزین کنم.برای همین یه قاعده ای به ذهنم رسید.

این که من بیام یه دستور رپلیس بزارم بطوری که کلماتی که اولشون فاصله +حروف کوچک هست رو با فاصله +حروف بزرگ جایگزین کند. بدین صورت :

TextBox3.Text = Replace(TextBox3.Text, " a", " A")
TextBox3.Text = Replace(TextBox3.Text, " b", " B")
TextBox3.Text = Replace(TextBox3.Text, " c", " C")
TextBox3.Text = Replace(TextBox3.Text, " d", " D")
TextBox3.Text = Replace(TextBox3.Text, " e", " E")
TextBox3.Text = Replace(TextBox3.Text, " f", " F")

اما مشکلی که در این روش هست حرف اول متن در این روش بدون تغییر خواهد ماند. برای متن salam khob hastin تبدیل به salam Khob Hastin خواهد شد و حرف اول کلمه سلام بدون تغییر باقی خواهد ماند. واضح هست چون قبلش فاصله وجود نداره.

برای اینکار چه دستوری بزارم که حرف اول متن تکست باکس رو هم تغییر بدم؟

یا اینکه الگوریتم دیگری برای اینکار در نظر دارید؟

یا اینکه از دستور زیراستفاده کنم ؟ فقط متوجه نشدم مقدار 3 معنیش چیه؟ این دستور زیر کاربردیه؟

TextBox2.Text = StrConv(TextBox1.Text, 3)

shahryari
دوشنبه 02 مرداد 1396, 20:13 عصر
string FirstCharToUpper(string s)
{
return char.ToUpper(s[0]) + s.Substring(1);
}

محمد آشتیانی
دوشنبه 02 مرداد 1396, 23:40 عصر
سلام
نیازی به کارهایی که انجام دادید نیست ، از این کد استفاده کنید


var cultureInfo = new CultureInfo("en-US", false).TextInfo;
textBox1.Text = cultureInfo.ToTitleCase(textBox1.Text.ToLower());



موفق باشید