<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?]]></title><description><![CDATA[<p dir="auto">מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?</p>
<p dir="auto">אני חשבתי שרגקס יהיה טוב אבל זה לוקח המון זמן<br />
מצו"ב הקוד רגקס שלי</p>
<pre><code>                        string pattern = $@"(.*? ){0,10}{Regex.Escape(searchTerm)}(.*? ){0,10}";
                        MatchCollection matches = Regex.Matches(fileContent, pattern);

                        if (matches.Count &gt; 0)
                        {
                            foreach (Match match in matches)
                            {
                            }
                        }
</code></pre>
]]></description><link>https://tchumim.com/topic/15720/שאלה-בc-מה-הדרך-הכי-טובה-להוציא-גזירים-מתוך-קטע-טקסט</link><generator>RSS for Node</generator><lastBuildDate>Thu, 05 Mar 2026 14:37:10 GMT</lastBuildDate><atom:link href="https://tchumim.com/topic/15720.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 04 Nov 2023 20:02:35 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Wed, 08 Nov 2023 14:27:01 GMT]]></title><description><![CDATA[<p dir="auto">לגבי הוקד רגקס הנ"ל אם אני רוצה לחפש מילים לא לפי סדר מסויים<br />
ראיתי מישהו שעשה ככה <a href="https://rubular.com/r/QFEfj9lMn3" target="_blank" rel="noopener noreferrer nofollow ugc">https://rubular.com/r/QFEfj9lMn3</a><br />
האם צורה כזו של חיפוש יעילה? כלומר האם זה מכביד מדאי אם אני יעשה כך המון פעמים ברצף</p>
<p dir="auto">אגב בלי רגקס אפשר לעשות ככה</p>
<pre><code>private bool containsAll(string[] words, string text)
{
    bool searchMatch = words.All(word =&gt; text.Contains(word));
    return searchMatch;
}
</code></pre>
]]></description><link>https://tchumim.com/post/158503</link><guid isPermaLink="true">https://tchumim.com/post/158503</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Wed, 08 Nov 2023 14:27:01 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Tue, 07 Nov 2023 01:19:11 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a><br />
אוקיי בוא נניח את הנושא המרכזי בצד לעת עתה<br />
הייתי כן רוצה להתמקד בקוד של הgpt כי אני צריך אותו גם במקום אחר.<br />
אני משתמש איתו לבניית האינדקס שלי.<br />
כלומר האינדקס של תוכנת החיפוש  lucene<br />
מה שאני עושה זה חלוקה של המסמך מראש לגזירים והאינדקס שומר את הגזירים ומחפש בתוך הגזירים.<br />
האם יש דרך יותר טובה לחלק מסמך לגזירים של 30 מילים (עם חפיפה של 10 מכל צד שזה אומר בעצם 10 מילים ישנות ועשרים חדשים כל פעם)</p>
]]></description><link>https://tchumim.com/post/158458</link><guid isPermaLink="true">https://tchumim.com/post/158458</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Tue, 07 Nov 2023 01:19:11 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Tue, 07 Nov 2023 01:05:03 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/pcinfogmach">@<bdi>pcinfogmach</bdi></a> כתב ב<a href="/post/158454">שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?</a>:</p>
<blockquote>
<p dir="auto">איבחנתי את המהירות על שעון פשוט ספרתי כמה זמן לקח לכל אחד לגמור.</p>
</blockquote>
<p dir="auto">אז בדקת ישר במצטבר, ולא על פעולה בודדת.<br />
לא היית מציע לך רג'קס אם הייתי יודע שזה על פני מסמכים רבים (כמה, זה הגיוני להכין מאות תוצאות מראש כשהמשתמש לא יראה אותם בכלל?). אני לא יכול לעזור כי צריך לאפיין את כל הפעולה, יש המון שיפורים פוטציאליים.<br />
הקוד של GPT גם לא טוב, הוא גם מבזבז המון זיכרון, וגם לו יש עלות לא קטנה אם מדובר בהמון מסמכים.</p>
<blockquote>
<p dir="auto">30 או 21 זה לא באמת משנה. רק זה קצת מקל על הקוד של הgpt לעשות גזירים קצת יותר ארוכים כי אז יש לו פחות פעולות לעשות.</p>
</blockquote>
<p dir="auto">אתה משווה שני שיטות, ואני מעיר לך על קולא שאתה עושה עם אחד ואתה אומר מה זה משנה, זה רק מקל קצת...</p>
]]></description><link>https://tchumim.com/post/158455</link><guid isPermaLink="true">https://tchumim.com/post/158455</guid><dc:creator><![CDATA[dovid]]></dc:creator><pubDate>Tue, 07 Nov 2023 01:05:03 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Tue, 07 Nov 2023 00:50:32 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a><br />
בוא נתעלם מבעיית האינדוקס - יש לי סיבה טובה למה במקרה זה אני לא הולך על אינדקס (למרות שיש לי משהו כבר מוכן).</p>
<p dir="auto">איבחנתי את המהירות על שעון פשוט ספרתי כמה זמן לקח לכל אחד לגמור.</p>
<p dir="auto">אכן הקוד של הgpt הוא שיטה אחרת לגמרי לגבי אופן יצירת המקטעים אתה צודק שכחתי לטפל בזה. רק צריך לעשות שיהיה קצת חפיפה בין המקטעים.</p>
<p dir="auto">30 או 21 זה לא באמת משנה. רק זה קצת מקל על הקוד של הgpt לעשות גזירים קצת יותר ארוכים כי אז יש לו פחות פעולות לעשות.</p>
]]></description><link>https://tchumim.com/post/158454</link><guid isPermaLink="true">https://tchumim.com/post/158454</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Tue, 07 Nov 2023 00:50:32 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Tue, 07 Nov 2023 00:18:10 GMT]]></title><description><![CDATA[<p dir="auto">הבנתי, אתה מריץ את הרגקס על פני הרבה מסמכים (שוב פעם חזרנו לבעיית האינדוקס, זה דבר יקר שלא אמורים לעשות בהחה שהמסמכים הם סטטיים ואין סיבה שלא "לזכור" את מיקומי מעברי השורה וכולי).<br />
הקוד של GPT דבר ראשון לא זהה לרגקס בכלל. הוא פשוט יוצר מקטעים בני 30 מילים מכל המסמך, וזה גם אם התוצאה היא המילה הראשונה במקטע. כמו"כ למה 30 ולא 21 כמו ברגקס? כמו"כ איך איבחנת את המהירות?</p>
<blockquote>
<p dir="auto">האם זה אומר שעדיף לעשות שורה של פקודות replace במקום regex replace אחד שכולל הרבה אפשרויות?</p>
</blockquote>
<p dir="auto">ממש לא. ראשית כל Replcae  עושה עבודה שלמה מחדש, שנית הפונקציה Replace היא לא קוד מותאם אלא קוד גנרי שמישהו כתב עבורך בדיוק כמו רג'קס. קוד מותאם זה אומר קוד שכתוב ייעודית ובנוי ביעילות בדיוק עבור התוצאה המבוקשת (וכל שינוי בתוצאה מחייב הרבה שינוי בקוד).</p>
]]></description><link>https://tchumim.com/post/158453</link><guid isPermaLink="true">https://tchumim.com/post/158453</guid><dc:creator><![CDATA[dovid]]></dc:creator><pubDate>Tue, 07 Nov 2023 00:18:10 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 23:56:21 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a></p>
<p dir="auto">הצטברות של פעולות כלומר הרצה של הקוד על כמה מסמכים אחד אחרי השני - ככל שכמות המסמכים גדלה כן גדל הפער בביצועים.<br />
יצויין שהמסמכים המדוברים הם מסמכים קצרים מאוד של טקסט. (בערך באורך של פרק א במשניות ברכות)</p>
<p dir="auto">כמות המופעים היה במאות או אם חיפשתי מילה כמו "כי" אז באלפים.</p>
<p dir="auto">נראה לי שהעבודה שעשיתי על התוצאות איננה רלוונטית מכיוון שהיא בעצם זהה בשני השיטות רק צורת השליפה היא שונה.</p>
<p dir="auto">בכל אופן מצו"ב הקודים של שני הבדיקות</p>
<ol>
<li>קוד הרגקס</li>
</ol>
<pre><code>string pattern = "(\\b\\w+\\W+){0,10}" + Regex.Escape(searchTerm) + "(\\W+\\w+\\b){0,10}";
MatchCollection matches = Regex.Matches(textToSearch, pattern);

if (matches.Count &gt; 0)
{
    foreach (Match match in matches)
    {
        string result = match.Value;
        result = Regex.Replace(result, @"&lt;.*?&gt;|[^א-ת\.""':, \(\)[]\{\}]", " ");
        result = result.Replace(searchTerm, "&lt;span style=\"color: red;\"&gt;" + searchTerm + "&lt;/span&gt;");
        fileIndexes[filePath].Add($"&lt;li&gt;&lt;a href='#{HttpUtility.HtmlEncode(fileName)}%{HttpUtility.HtmlEncode(chapterName)}' onclick='showMessage(this)'&gt;{fileName} {chapterName}&lt;/a&gt;&lt;br&gt;{result}&lt;/li&gt;");
        resultPagesSum++;
    }
}
</code></pre>
<ol start="2">
<li>הקוד של gpt</li>
</ol>
<pre><code>List&lt;string&gt; snippets = SplitStringIntoSnippets(textToSearch, 30);

foreach (string snippet in snippets)
{
    if (snippet.Contains(searchTerm))
    {
        string result = Regex.Replace(snippet, @"&lt;.*?&gt;|[^א-ת\.""':, \(\)[]\{\}]", " ");
        result = result.Replace(searchTerm, "&lt;span style=\"color: red;\"&gt;" + searchTerm + "&lt;/span&gt;");
        fileIndexes[filePath].Add($"&lt;li&gt;&lt;a href='#{HttpUtility.HtmlEncode(fileName)}%{HttpUtility.HtmlEncode(chapterName)}' onclick='showMessage(this)'&gt;{fileName} {chapterName}&lt;/a&gt;&lt;br&gt;{result}&lt;/li&gt;");
        resultPagesSum++;
    }
}

static List&lt;string&gt; SplitStringIntoSnippets(string input, int maxSnippetLength)
{
    List&lt;string&gt; snippets = new List&lt;string&gt;();

    string[] words = input.Split(new char[] { ' ', '\t', '\n' }, StringSplitOptions.RemoveEmptyEntries);
    int wordCount = 0;
    int currentIndex = 0;

    for (int i = 0; i &lt; words.Length; i++)
    {
        wordCount++;
        if (wordCount &gt;= maxSnippetLength)
        {
            snippets.Add(string.Join(" ", words, currentIndex, maxSnippetLength));
            currentIndex = i + 1;
            wordCount = 0;
        }
    }

    if (currentIndex &lt; words.Length)
    {
        snippets.Add(string.Join(" ", words, currentIndex, words.Length - currentIndex));
    }

    return snippets;
}
</code></pre>
<p dir="auto">ועוד שאלה:<br />
<a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a> כתב ב<a href="/post/158447">שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?</a>:</p>
<blockquote>
<p dir="auto">קוד טוב יהיה טוב יותר מרגקס (נכון להיום בדוטנט)</p>
</blockquote>
<p dir="auto">אם אני צריך לעבד טקסט על ידי שורה של החלפות.<br />
האם זה אומר שעדיף לעשות שורה של פקודות replace במקום regex  replace אחד שכולל הרבה אפשרויות?</p>
]]></description><link>https://tchumim.com/post/158452</link><guid isPermaLink="true">https://tchumim.com/post/158452</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Mon, 06 Nov 2023 23:56:21 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 23:31:58 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/pcinfogmach">@<bdi>pcinfogmach</bdi></a> כתב ב<a href="/post/158450">שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?</a>:</p>
<blockquote>
<p dir="auto">בבדיקה שלי הקוד רגקס לקח כמעט פי שניים מהזמן של הקוד של gpt,</p>
</blockquote>
<p dir="auto">אני מאוד מתפלא, איך בדקת? מאוד מאוד מעניין אותי אם זה יותר לאט, אשמח לקבל מושג על גודל המסמך, וכמות המופעים, ואופן הבדיקה.<br />
יכול להיות גם שהעבודה שעשית על התוצאות לקחה זמן, לכן נסה לבודד את הבדיקה רק על השליפה.</p>
<blockquote>
<p dir="auto">כלומר בהצטברות של הרבה פעולות ההפרש לא זניח בכלל.</p>
</blockquote>
<p dir="auto">מה שייך הצטברות של פעולות, וכי אתה מחלץ תוצאות חיפוש בבת אחת למאה משתמשים או למאה מונחים? בדרך כלל הצגת תוצאות חיפוש זו פעולה חד פעמית בזמן נתון, ובדיוק לכן רגקס היה ההמלצה החזקה שלי.</p>
]]></description><link>https://tchumim.com/post/158451</link><guid isPermaLink="true">https://tchumim.com/post/158451</guid><dc:creator><![CDATA[dovid]]></dc:creator><pubDate>Mon, 06 Nov 2023 23:31:58 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 23:18:57 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a> כתב ב<a href="/post/158447">שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?</a>:</p>
<blockquote>
<p dir="auto">ההפרש זניח פר פעולה</p>
</blockquote>
<p dir="auto">בבדיקה שלי הקוד רגקס לקח כמעט פי שניים מהזמן של הקוד של gpt, כלומר בהצטברות של הרבה פעולות ההפרש לא זניח בכלל.</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a> כתב ב<a href="/post/158447">שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?</a>:</p>
<blockquote>
<p dir="auto">אם אתה נתקל באיטיות אפילו קטנה מאוד, רק אז יש מה לפתוח לדיון קוד מותאם אישית.</p>
</blockquote>
<p dir="auto">זה תלוי בך אם זה מעניין אותך אם לא אז לא אטריח אותך יתר על המידה. (לי אין מושג מאיפה להתחיל ואם מדובר בדברים מורכבים מאוד אז לא אוכל להשתתף די הצורך בפיתוח הרעיון).</p>
]]></description><link>https://tchumim.com/post/158450</link><guid isPermaLink="true">https://tchumim.com/post/158450</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Mon, 06 Nov 2023 23:18:57 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 22:57:34 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/pcinfogmach">@<bdi>pcinfogmach</bdi></a> כתב ב<a href="/post/158440">שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?</a>:</p>
<blockquote>
<p dir="auto">השאלה היא האם יש דרך שלישית לקבל ביצועים יותר טובים.</p>
</blockquote>
<p dir="auto">קוד טוב יהיה טוב יותר מרגקס (נכון להיום בדוטנט), אבל: א. ההפרש זניח פר פעולה ב. כל כזאת החלטה של "מותאם אישית" יש לה מחירים של עוד קוד, תחזוקה, ובאגים. אם אתה נתקל באיטיות אפילו קטנה מאוד, רק אז יש מה לפתוח לדיון קוד מותאם אישית.</p>
]]></description><link>https://tchumim.com/post/158447</link><guid isPermaLink="true">https://tchumim.com/post/158447</guid><dc:creator><![CDATA[dovid]]></dc:creator><pubDate>Mon, 06 Nov 2023 22:57:34 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 19:25:56 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/%D7%97%D7%92%D7%99">@<bdi>חגי</bdi></a><br />
צודק אני רואה שהתבלבתי לגמרי. הקוד של דוד הוא מצויין כמו שהוא</p>
]]></description><link>https://tchumim.com/post/158442</link><guid isPermaLink="true">https://tchumim.com/post/158442</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Mon, 06 Nov 2023 19:25:56 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 19:23:40 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/pcinfogmach">@<bdi>pcinfogmach</bdi></a> כתב ב<a href="/post/158440">שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?</a>:</p>
<blockquote>
<p dir="auto">[\w"?]+</p>
</blockquote>
<p dir="auto">אתה רוצה לכלול סימני שאלה בתוך הרג'קס שלך? כי שמת את הסימן שאלה בתוך הסוגריים המרובעים.</p>
]]></description><link>https://tchumim.com/post/158441</link><guid isPermaLink="true">https://tchumim.com/post/158441</guid><dc:creator><![CDATA[חגי]]></dc:creator><pubDate>Mon, 06 Nov 2023 19:23:40 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 19:31:35 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a> כתב ב<a href="/post/158412">שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט?</a>:</p>
<blockquote>
<p dir="auto">הקוד של הGPT לא ראוי בעיני ליחס.</p>
</blockquote>
<p dir="auto">לבינתיים הקוד של gpt מבצע יותר מהיר מהקוד רגקס גם אחרי התיקון. (אולי הסיבה כך כי אני מתעסק עם מסמכי טקסט קצרים יחסית).<br />
השאלה היא האם יש דרך שלישית לקבל ביצועים יותר טובים.</p>
]]></description><link>https://tchumim.com/post/158440</link><guid isPermaLink="true">https://tchumim.com/post/158440</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Mon, 06 Nov 2023 19:31:35 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 19:22:09 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/pcinfogmach">@<bdi>pcinfogmach</bdi></a> אתה רוצה לכלול גרשיים בתוך מילה ולא גרשיים מסביב לטקסט (דהיינו תחילת מילה או סוף מילה)?<br />
<a href="https://regex101.com/r/QGFV52/1" target="_blank" rel="noopener noreferrer nofollow ugc">https://regex101.com/r/QGFV52/1</a></p>
<p dir="auto">סליחה אבל עד עכשיו לא הבנתי בדיוק מה הבעיה, הצלחתי קצת להבין מההודעות של <a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a> בהנחה והוא הבין אותך נכון.</p>
]]></description><link>https://tchumim.com/post/158439</link><guid isPermaLink="true">https://tchumim.com/post/158439</guid><dc:creator><![CDATA[חגי]]></dc:creator><pubDate>Mon, 06 Nov 2023 19:22:09 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 18:43:20 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/pcinfogmach">@<bdi>pcinfogmach</bdi></a><br />
<a href="https://regex101.com/r/gAvS8i/1" target="_blank" rel="noopener noreferrer nofollow ugc">https://regex101.com/r/gAvS8i/1</a></p>
]]></description><link>https://tchumim.com/post/158437</link><guid isPermaLink="true">https://tchumim.com/post/158437</guid><dc:creator><![CDATA[dovid]]></dc:creator><pubDate>Mon, 06 Nov 2023 18:43:20 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Mon, 06 Nov 2023 19:28:02 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a></p>
<p dir="auto"><img src="https://tchumim.com/assets/plugins/nodebb-plugin-emoji/emoji/android/1f44d.png?v=9d71ebe86e6" class="not-responsive emoji emoji-android emoji--+1" style="height:23px;width:auto;vertical-align:middle" title=":+1:" alt="👍" /> <img src="https://tchumim.com/assets/plugins/nodebb-plugin-emoji/emoji/android/1f44d.png?v=9d71ebe86e6" class="not-responsive emoji emoji-android emoji--+1" style="height:23px;width:auto;vertical-align:middle" title=":+1:" alt="👍" /> <img src="https://tchumim.com/assets/plugins/nodebb-plugin-emoji/emoji/android/1f44d.png?v=9d71ebe86e6" class="not-responsive emoji emoji-android emoji--+1" style="height:23px;width:auto;vertical-align:middle" title=":+1:" alt="👍" /> החכמתני הרעיון שלך נכון גם לגבי וורד</p>
]]></description><link>https://tchumim.com/post/158435</link><guid isPermaLink="true">https://tchumim.com/post/158435</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Mon, 06 Nov 2023 19:28:02 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Sun, 05 Nov 2023 19:46:16 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/pcinfogmach">@<bdi>pcinfogmach</bdi></a> לא הבנת טוב את הטעות של הרג'קס. גם לשיטתך היית צריך במקום נקודה לעשות כל תו שאינו רווח.<br />
לגבי הר"ת יש לזה פתרון פשוט, לכתוב [\w"].<br />
לא כ"כ ברור ממך אם עדיין יש בעיה או שאלה.<br />
הקוד של הGPT לא ראוי בעיני ליחס.</p>
]]></description><link>https://tchumim.com/post/158412</link><guid isPermaLink="true">https://tchumim.com/post/158412</guid><dc:creator><![CDATA[dovid]]></dc:creator><pubDate>Sun, 05 Nov 2023 19:46:16 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Sun, 05 Nov 2023 18:22:15 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/dovid">@<bdi>dovid</bdi></a><br />
תודה אני מבין את הטעות שלי אני מגיע מעולם ביטויים הרגולריים של וורד (\הנוסח החרדי שלו). שמה מאוד מקובל לפצל טקסט לפי רווחים כדי למנוע בעיות עם ראשי תיבות שבעצם איננו מוגדר כחלק ממילה.<br />
אני מבין מתוך דבריך שברגקס בגלל איך שהוא בנוי זה פשוט לא פרקטי.<br />
אולי פתרון לזה יהיה להחליף את כל הרשאי תיבות עם "_" ואז להחליף בחזרה.</p>
<p dir="auto">השליפה נועדה ליצור גזירים לצורך הצגת תוצאות חיפוש במסמכי טקסט בודדים.<br />
הוי אומר בטקסט ארוך שמופיעה מילת חיפוש  כמה פעמים אני רוצה לשלוף גזירים רלוונטיים מתוך הטקסט בהם מופיעה המילה. ייתכן מאוד שיהיו גם  עשרות גזירים תלוי באורך הטקסט ובכמות המופעים של מילת החיפוש.</p>
<p dir="auto">השיטה השניה שהבאתי מgpt הוא רעיון אחר במקום לשלוף גזירים פשוט לחלק את הטקסט לגזירים ולמיין אח"כ את הגזירים הרלוונטיים.</p>
]]></description><link>https://tchumim.com/post/158411</link><guid isPermaLink="true">https://tchumim.com/post/158411</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Sun, 05 Nov 2023 18:22:15 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Sun, 05 Nov 2023 04:54:36 GMT]]></title><description><![CDATA[<p dir="auto">בהתבונונת שוב ברג'קס שכה סירבתי לעיין בו, אני מבין שהיה רצון לקחת עשר מילים לפני ואחרי הביטוי.<br />
אני מתקן את הביטוי, תנסה ככה:</p>
<pre><code>string pattern = $@"(\b\w+\W+){0,10}{Regex.Escape(searchTerm)}(\W+\w+\b){0,10}";
</code></pre>
<p dir="auto">הביטוי שהיה כלל כל תו (.), אין סוף פעמים (*), שאחריהם רווח, כפול עשר. זה ביטוי שגם לא בהכרח יביא תוצאה רצויה כי נקודה זה כולל רווח, ולכן זה ייקח את כל הטקסט שלפני הביטוי יהיה אורכו שיהיה, ומאידך הוא בעייתי כי יש המון דרכים לפרש אותו - בכל רווח צריך לחשב את נכונותו של כלל הביטוי.</p>
<p dir="auto">הביטוי שהצעתי הוא כזה:</p>
<p dir="auto">\b - גבול מילה, זה כולל רווח אבל לא רק, למשל תחילת הטקסט זה גבול מילה ללא רווח.<br />
\w+ - רצף של כל תו שהינו חלק ממילה, למשל כל האלף בית.<br />
\W* - תו או יותר בסיום המילה שאיננו חלק ממילה, כמו רווח נקודה וכולי.</p>
]]></description><link>https://tchumim.com/post/158405</link><guid isPermaLink="true">https://tchumim.com/post/158405</guid><dc:creator><![CDATA[dovid]]></dc:creator><pubDate>Sun, 05 Nov 2023 04:54:36 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Sun, 05 Nov 2023 04:23:25 GMT]]></title><description><![CDATA[<p dir="auto">א. הביטוי רגקס שבשאלה איננו תקין, צ"ע על מי שניסח אותו. <strong>לכן הוא גם לאט</strong>.<br />
ב. אם הייתה דרך טובה אחת מוחלטת להוציא חלק מטקסט, לא היו דרכים אחרים לבצע את המטלה הזאת. הכל תלוי בפרטי הצרכים שהם לא בוארו פה.<br />
ג. בשביל לתת לך דרך טובה יותר מרגקס (למרות שייתכן שגם הוא טוב), אנחנו חייבים לדעת את פרטי הצורך: מה להוציא בדיוק.<br />
ד. עוד יועיל לדעת, האם על הטקסט הנתון תתבצע השליפה הזו כמה פעמים או רק חד פעמי.</p>
]]></description><link>https://tchumim.com/post/158402</link><guid isPermaLink="true">https://tchumim.com/post/158402</guid><dc:creator><![CDATA[dovid]]></dc:creator><pubDate>Sun, 05 Nov 2023 04:23:25 GMT</pubDate></item><item><title><![CDATA[Reply to שאלה בC#: מה הדרך הכי טובה להוציא גזירים מתוך קטע טקסט? on Sat, 04 Nov 2023 20:50:03 GMT]]></title><description><![CDATA[<p dir="auto">gpt הציע את זה</p>
<pre><code>private void getSnippets()
{

 List&lt;string&gt; snippets = SplitStringIntoSnippets(longText, 30);

 foreach (string snippet in snippets)
 {
 //do something
 }
}


 static List&lt;string&gt; SplitStringIntoSnippets(string input, int maxSnippetLength)
 {
     List&lt;string&gt; snippets = new List&lt;string&gt;();

     string[] words = input.Split(new char[] { ' ', '\t', '\n' }, StringSplitOptions.RemoveEmptyEntries);
     int wordCount = 0;
     int currentIndex = 0;

     for (int i = 0; i &lt; words.Length; i++)
     {
         wordCount++;
         if (wordCount &gt;= maxSnippetLength)
         {
             snippets.Add(string.Join(" ", words, currentIndex, maxSnippetLength));
             currentIndex = i + 1;
             wordCount = 0;
         }
     }

     if (currentIndex &lt; words.Length)
     {
         snippets.Add(string.Join(" ", words, currentIndex, words.Length - currentIndex));
     }

     return snippets;
 }
</code></pre>
]]></description><link>https://tchumim.com/post/158398</link><guid isPermaLink="true">https://tchumim.com/post/158398</guid><dc:creator><![CDATA[pcinfogmach]]></dc:creator><pubDate>Sat, 04 Nov 2023 20:50:03 GMT</pubDate></item></channel></rss>