PDA

View Full Version : مشکل در جایگزینی حروف در رشته



nurani
سه شنبه 27 بهمن 1394, 17:35 عصر
با کد زیر می خوام انجام بدم تغییر نمیکنه
string str1 = txtsub.Text;
str1 = str1.Replace("a", " a ");

string str2 = txtsub.Text;
str2 = str2.Replace("k", " k ");

string str3 = txtsub.Text;
str3 = str3.Replace("[", " [ ");

در واقع هدفم اسپیس خالی قرار دادن جلو و عقب یه حروف خاصی هست حتی اگر این حروف در اول یا وسط یا اخر کلمه باشه
اگه بخوام به چندین حروف بخوام اعمال بشه باید تک تک مثل کد بالا براش کد بنویسم یا کد کوتاه تری داره

nunegandom
سه شنبه 27 بهمن 1394, 19:27 عصر
دقیق بگید قراره چکار کنید تا یه کد regex بهتون بدم
تمامی حروف رو بگید بعلاوه شرایط و هر چیزی که هست

nurani
چهارشنبه 28 بهمن 1394, 00:28 صبح
دقیق بگید قراره چکار کنید تا یه کد regex بهتون بدم
تمامی حروف رو بگید بعلاوه شرایط و هر چیزی که هست

یه رشته دارم تو ریچ تکست باکس توش کلماتی مانند barnamenevis و kerman و tehran و mashhad هست می خوام حروف مشخص شده که تعدادش چند تا است رو می خوام از داخل رشته پیدا کنم و با یه کاراکتر فاصله در اول و بعد همان حروف نمایش بدم مانند با فرض حروف a و k
b a rn a menevis و k erm a n و tehr a n و m a shh a d

حروف هایی مانند اینها رو می خوام فاصله دار کنم t r [ ] ( ) و چند حروف دیگر
البته کلمات خیلی زیاده هر جا که حروف مشخص شده باشد آنها با یه اسپیس فاصله در اول و بعد نمایش داده شود
و دوباره در همان ریچ تکست باکس نمایش داده شود

nurani
چهارشنبه 28 بهمن 1394, 15:03 عصر
یه رشته دارم تو ریچ تکست باکس توش کلماتی مانند barnamenevis و kerman و tehran و mashhad هست می خوام حروف مشخص شده که تعدادش چند تا است رو می خوام از داخل رشته پیدا کنم و با یه کاراکتر فاصله در اول و بعد همان حروف نمایش بدم مانند با فرض حروف a و k
b a rn a menevis و k erm a n و tehr a n و m a shh a d

حروف هایی مانند اینها رو می خوام فاصله دار کنم t r [ ] ( ) و چند حروف دیگر
البته کلمات خیلی زیاده هر جا که حروف مشخص شده باشد آنها با یه اسپیس فاصله در اول و بعد نمایش داده شود
و دوباره در همان ریچ تکست باکس نمایش داده شود


کسی نیست کمک کنه کد قبلی کار می کنه اما برای یک حروف اگه چند تا حروف باشه چطوری جایگزین کنم

fool66
چهارشنبه 28 بهمن 1394, 15:11 عصر
اگه کلماتت مشخص باشه میتونی فضای خالی رو پاک کنی و کلمه کلمه جداشون کنی
اگه میشه واضح تر توضیح بدین کارتون رو

nurani
چهارشنبه 28 بهمن 1394, 15:28 عصر
اگه کلماتت مشخص باشه میتونی فضای خالی رو پاک کنی و کلمه کلمه جداشون کنی
اگه میشه واضح تر توضیح بدین کارتون رو

توضیح نمی خواد که از داخل یه رشته حروف های مشخص رو می خوام اول و بعدش یه اسپیس خالی بزارم اون کد بالا درست کار می کنه اما فقط برای یک حروف اگه تعداد حروف زیاد باشه چطوری همه رو فاصله دار کنم و دوباره در همان تکست باکس نمایش دهم
اینم حروفی که می خوام فاصله دار باشن t r [ ] ( )

nunegandom
چهارشنبه 28 بهمن 1394, 23:38 عصر
سلام
من در همین حد تونستم درش بیارم یکم مشکل داره البته
string resultString = null;
try {
resultString = Regex.Replace(subjectString, @"([^a|t|r|\[|\]|\(|\)]|)(a|t|r|\[|\]|\(|\)|)", "$1 $2");
} catch (ArgumentException ex) {
// Syntax error in the regular expression
}