جدا سازی تکست بعد از کاراکتر مشخص در ریچ باکس
سلام
اگرممکن هست راهنمایی کنید چطور میتونم بعداز کاراکتر <date> هر چیزی که بعد از ان هست داخل یک تکست باکس جدا برود
این تکست داخل ریچ باکس هست
کد HTML:
A <date> IMAGE.bin
CAD <date> num1.text
CAD <date> num2-2.text
BAG <date> arash
قسمت هایی که بعد از <date> هست داخل تکست جدا برود با توجه به اینکه فضای خالی یا اسپیس بعد از <date> متغیر هست
ممنون میشم اگر کدی به نظر مفید تر هست ارائه بدین
نقل قول: جدا سازی تکست بعد از کاراکتر مشخص در ریچ باکس
نقل قول:
نوشته شده توسط
arashdj
سلام
اگرممکن هست راهنمایی کنید چطور میتونم بعداز کاراکتر <date> هر چیزی که بعد از ان هست داخل یک تکست باکس جدا برود
این تکست داخل ریچ باکس هست
کد HTML:
A <date> IMAGE.bin
CAD <date> num1.text
CAD <date> num2-2.text
BAG <date> arash
قسمت هایی که بعد از <date> هست داخل تکست جدا برود با توجه به اینکه فضای خالی یا اسپیس بعد از <date> متغیر هست
ممنون میشم اگر کدی به نظر مفید تر هست ارائه بدین
طبعا انجام اینجور تفکیک ها با Regex که میتونه رشته رو به گروه های مختلف تفکیک کنه خیلی ساده است.
با فاصله :
var input = richTextBox1.Text;
var r = new System.Text.RegularExpressions.Regex("^[\\w ]*\\<date\\>(?<text>.*)$"
, System.Text.RegularExpressions.RegexOptions.Multil ine);
var output = r.Replace(input, "${text}");
richTextBox2.Text = output;
بی فاصله :
var input = richTextBox1.Text;
var r = new System.Text.RegularExpressions.Regex("^[\\w ]*\\<date\\>\\s*(?<text>.*)\\s*$"
, System.Text.RegularExpressions.RegexOptions.Multil ine);
var output = r.Replace(input, "${text}");
richTextBox2.Text = output;
اون ^ یعنی شروع سطر یا رشته.
اون *[ w\\] برای A و CAD و BAG و ... به همراه فاصله های بعد اش.
اون <\\date>\\ هم که همون <date> ئه.
اون (*.<text>؟) یعنی هر چی که بعد از <date> نوشته شده (شامل کاراکتر های فاصله) که اسمشون رو text میذاریم.
اون *s\\(*.<text>؟)*s\\ یعنی هر چی که بعد از <date> نوشته شده (کاراکتر های فاصله قبل و بعدش رو جزو text بحساب نمیاریم)
اون $ یعنی انتهای سطر یا رشته.
1 ضمیمه
نقل قول: جدا سازی تکست بعد از کاراکتر مشخص در ریچ باکس
ممنون توضیح خوبی بود ولی خروجی هنوز روی ریچ باکس میره داخل تکست جدا نمیرهضمیمه 151523
نقل قول: جدا سازی تکست بعد از کاراکتر مشخص در ریچ باکس
نقل قول:
نوشته شده توسط
arashdj
ممنون توضیح خوبی بود ولی خروجی هنوز روی ریچ باکس میره داخل تکست جدا نمیره
ضمیمه 151523
با Split تفکیک شون کنید :
private void button1_Click(object sender, EventArgs e)
{
var input = richTextBox1.Text;
var r = new System.Text.RegularExpressions.Regex("^[\\w ]*\\<date\\>(?<text>.*)$"
, System.Text.RegularExpressions.RegexOptions.Multil ine);
var output = r.Replace(input, "${text}");
richTextBox2.Text = output;
var lines = output.Split(new string[] { "\r\n", "\r", "\n" }, StringSplitOptions.RemoveEmptyEntries);
for (var i = 0; i < lines.Length; i++)
{
Controls["textBox" + (i + 1)].Text = lines[i];
}
}
نقل قول: جدا سازی تکست بعد از کاراکتر مشخص در ریچ باکس
سپاس فراوان عالی
یک سوال کوچک داشتم و اینکه اگر قبل A و CAD و BAG حرفی دیگر با فاصله باشه یا عددی یا کاراکتر اون چطور خذف میشه
ARASH -13 CAD <date> num1.text
A-RASH 10 BAG<date> num2.text
1 ضمیمه
نقل قول: جدا سازی تکست بعد از کاراکتر مشخص در ریچ باکس
نقل قول:
نوشته شده توسط
arashdj
سپاس فراوان عالی
یک سوال کوچک داشتم و اینکه اگر قبل A و CAD و BAG حرفی دیگر با فاصله باشه یا عددی یا کاراکتر اون چطور خذف میشه
ARASH -13 CAD <date> num1.text
به شکل های مختلف میشه الگوی Regex رو تغییر داد ولی کلی ترین حالت اینه که بگیم قبل <date> ئه *. باشه، *. یعنی هر جور رشته ای به هر طولی.
ضمیمه 151524