تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
جلب الكلمة و الكلمة التي قبلها
#3
(11-08-24, 12:38 PM)Amir_Alzubidy كتب : المعذرة اخي الحبيب ربما هناك مشكلة بعدم فهم السؤال ،
اليك التعديل مجدداً و اتمنى ان يكون حلاً موفقاً . 
ان لم يكن كذلك فلا بأس ، يمكنك ارفاق الملف النصي في ردك القادم للتجربة 
تحياتي لك 
PHP كود :
Imports System.IO
Imports System
.Text.RegularExpressions

Public Class Form1
    
' افترض أن لديك 3 TextBox: txtSearch, txtResults, txtCount
    ' 
و Button واحد لتنفيذ البحث

    Private Sub btnSearch_Click
(sender As ObjectAs EventArgsHandles btnSearch.Click
        Dim searchTerm 
As String txtSearch.Text.Trim()
 
       Dim filePath As String "C:\path\to\CORAN.txt" ' قم بتحديث المسار إلى المسار الصحيح للملف

        If String.IsNullOrEmpty(searchTerm) Then
            MessageBox.Show("يرجى إدخال كلمة البحث.")
            Return
        End If

        If Not File.Exists(filePath) Then
            MessageBox.Show("الملف النصي غير موجود.")
            Return
        End If

        Dim content As String = File.ReadAllText(filePath)
        Dim regexPattern As String = String.Format("(\b\w+\b)?\s+\b{0}\b", Regex.Escape(searchTerm))
        Dim regex As New Regex(regexPattern, RegexOptions.IgnoreCase Or RegexOptions.Multiline)
        Dim matches As MatchCollection = regex.Matches(content)
        Dim results As New Text.StringBuilder()
        Dim count As Integer = matches.Count

        For Each match As Match In matches
            If match.Success Then
                Dim previousWord As String = If(String.IsNullOrEmpty(match.Groups(1).Value), "", match.Groups(1).Value)
                results.AppendLine($"{previousWord} {searchTerm}")
            End If
        Next

        txtResults.Text = results.ToString()
        txtCount.Text = count.ToString()
    End Sub
End Class 
المعذرة أخي الكريم 
نفس النتيجة 
الكود بعد تحويله إلى C#
        private void btnSearch_Click(object sender, EventArgs e)
        {
            string searchTerm = txtSearch.Text.Trim();
            string filePath = @"CORAN.txt"; // Update the path to the correct file path

            if (string.IsNullOrEmpty(searchTerm))
            {
                MessageBox.Show("Please enter a search term.");
                return;
            }

            if (!File.Exists(filePath))
            {
                MessageBox.Show("The text file does not exist.");
                return;
            }

            string content = File.ReadAllText(filePath);
            string regexPattern = $@"(\b\w+\b)?\s+\b{Regex.Escape(searchTerm)}\b";
            Regex regex = new Regex(regexPattern, RegexOptions.IgnoreCase | RegexOptions.Multiline);
            MatchCollection matches = regex.Matches(content);
            StringBuilder results = new StringBuilder();
            int count = matches.Count;

            foreach (Match match in matches)
            {
                if (match.Success)
                {
                    string previousWord = string.IsNullOrEmpty(match.Groups[1].Value) ? "" : match.Groups[1].Value;
                    results.AppendLine($"{previousWord} {searchTerm}");
                }
            }

            txtResults.Text = results.ToString();
            txtCount.Text = count.ToString();
        }

فقط يعطيك مثلا سورة المؤمنون... و لا يعطيك بقية الآيات التي توجد فيها كلمة المؤمنون
الطلب مرة أخرى للتوضيح:
لدي ملف نصي يسمى QURAN.txt، والذي يحتوي على القرآن الكريم كاملاً، مكتوباً بعلامات التشكيل. اريد دالة بلغة سي شارب تبحث في هذا الملف النصي ولدي 3 مربعات نصية الأول هو لكتابة الكلمة التي أبحث عنها في هذا الملف النصي (كلمة الجمعة مثلاً). 
والثاني هو لعرض هذه الكلمة + الكلمة التي قبلها مباشرة، مثلاً (سورة الجمعة أو يوم الجمعة). أريد أن تكون كل جملة في سطر منفصل
 والثالث هو لمعرفة عدد الكلمة التي تبحث عنها في الملف النصي (عدد كلمة الجمعة مثلا.


    Heart ربي زدني علما  Heart

الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  البرامج-التي-يجب-توافرها-لدي-العميل amonem 1 1,229 07-10-22, 12:44 PM
آخر رد: asemshahen5
  ما هي الطريقة التي تربط أجهزة متعددة Desktop او صفحة انترنت لعمل برنامج تفاعلي ؟ خليل إبراهيم 0 1,496 16-07-21, 11:49 PM
آخر رد: خليل إبراهيم
  ماهي لغة البرمجة التي سوف تنجز لي هذة المهمة معلم تصميم 0 1,278 10-12-19, 10:42 AM
آخر رد: معلم تصميم
  [سؤال] كيف اضيف الاداة التي في المثال لمشروع جديد قاسم 3 2,238 17-11-17, 10:50 PM
آخر رد: nani49
  [SQL] ما دور هذه الكلمة في الاستعلام "PERCENT" قاسم 2 2,609 06-11-17, 05:24 PM
آخر رد: قاسم
  جلب نص الكلمة التي تحت مؤشر الماوس saad.abu 1 2,048 06-09-17, 06:33 PM
آخر رد: saad.abu
  كيفيه تحويل النص الى عدد وتحديد عدد الاعداد التي يجب ان تكتب في ال textbox ليلى ابوكف 4 7,591 20-12-15, 01:19 PM
آخر رد: م.أحمد الدسوقى
  [سؤال] ماهي الاخطاء التي تتواجد في الكود ؟ 0theghost0 0 2,608 25-02-15, 12:36 PM
آخر رد: 0theghost0
  [سؤال] أرجو المساعدة في المشكلة التي واجهتني ِA3-3aTa 5 4,284 24-11-13, 02:46 AM
آخر رد: oneyemenweb2
  كيف احدد الفورم التي اريدها تظهر في بداية التنفيذ في لغة السي شارب خادم الصدر 8 5,582 07-05-13, 04:10 AM
آخر رد: awadhabdullah

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم