السلام عليكم
اريد المساعده فى هذا الكود وهو بياخد من richtextbox بيقرأ سطر سطر فالمفروض انه بيقارن الكلام ده بملفين نصوص ملف بة كل الجمل وملف بة كل الكلمات فيقارن الكلام الموجود عنده بهذة الجمل والكلمات لو كانت جمله يضعها فى ملف نص اخر ويضعها قبلها # لو لو يجدها يضعها بين |||| ام لو وجدها كلمة فانه يضعها كما هى وان كانت غير موجوده يضعها ايضا بين |||| الكود بيكرر اى بيخرج الجمله او الكلمة مرتين ممكن اجد من يساعدنى وجزاكم الله خيرا
string readingsent = File.ReadAllText(@"C:\hayam\dictionaries\gumal.txt");
string[] reading_sentences = readingsent.Split(new char[] { ',', '.', '?', '!', '|', ':', ';' });
Stream outputtencesSen = new FileStream(@"C:\hayam\temp\temp01.txt", FileMode.Append, FileAccess.Write, FileShare.None);
StreamWriter sentencewriter = new StreamWriter(outputtencesSen);
string[] readinwords = File.ReadAllLines(@"C:\hayam\dictionaries\kalimat.txt");
foreach (string lin in File.ReadAllLines(@"C:\hayam\transinput\ToTranslateFile01.txt"))
{
string[] sentences = lin.Split(new char[] { ',', '.', '?', '!', '|', ':', ';' });
foreach (string sentence in sentences)
{
Regex reg = new Regex(sentence);
foreach (string gumla in reading_sentences)
{
int lenrth = gumla.Length;
//if (sentence.Length == lenrth)
//{
if (reg.IsMatch(gumla))
{
sentencewriter.AutoFlush = true;
sentencewriter.Write("#" + Environment.NewLine + sentence.Trim().ToString() + Environment.NewLine);
}
else
{
sentencewriter.Write("||" + sentence.ToString() + "||");
}
foreach (string word in readinwords)
{
string[] ww = Regex.Split(word, @"\W+");
foreach (string w in ww)
{
int lenword = w.Length;
//if (sentence.Length <= lenword)
//{
if (reg.IsMatch(w.Trim()))
{
sentencewriter.AutoFlush = true;
sentencewriter.Write(Environment.NewLine + sentence.Trim().ToString() + Environment.NewLine);
}
//else if (!reg.IsMatch(w.Trim()))
//{
// MessageBox.Show(sentence);
// sentencewriter.AutoFlush = true;
// sentencewriter.Write("||" + sentence.Trim().ToString() + "||");
//}
//}
//}
}
}
}
}
}