דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. עזרה בregex bbcode בתוך bbcode

עזרה בregex bbcode בתוך bbcode

מתוזמן נעוץ נעול הועבר תכנות
17 פוסטים 3 כותבים 293 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • yossizY מנותק
    yossizY מנותק
    yossiz
    השיב לchagold ב נערך לאחרונה על ידי
    #2

    @chagold האם אתה יכול לתאר בעברית את החיפוש שאתה צריך?

    מה התבנית של הטקסט (תיאור שיתאים לכל טקסט אפשרי שאתה מצפה לקבל) ומה אתה רוצה לחלץ מתוכו

    אח"כ נראה איך אפשר לתרגם את זה לרג'קס

    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

    chagoldC תגובה 1 תגובה אחרונה
    0
    • chagoldC מנותק
      chagoldC מנותק
      chagold
      השיב לyossiz ב נערך לאחרונה על ידי chagold
      #3

      @yossiz

      bbcode.txt

      אני צריך לחלץ את ה- highlight כמו בדוגמא שעשיתי מקודם.

      yossizY תגובה 1 תגובה אחרונה
      0
      • yossizY מנותק
        yossizY מנותק
        yossiz
        השיב לchagold ב נערך לאחרונה על ידי
        #4

        @chagold כלומר, כל מה שבין תגיות highlight?

        ככה?

        📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

        chagoldC תגובה 1 תגובה אחרונה
        1
        • chagoldC מנותק
          chagoldC מנותק
          chagold
          השיב לyossiz ב נערך לאחרונה על ידי
          #5

          @yossiz כן.
          אבל אני צריך ג"כ להשתמש בו בפונקציית החלפה, ז"א שיהיה לו group נפרד, כמו שהיה כאן את group 2.

          yossizY תגובה 1 תגובה אחרונה
          0
          • yossizY מנותק
            yossizY מנותק
            yossiz
            השיב לchagold ב נערך לאחרונה על ידי
            #6

            @chagold ברגקס שלי התוכן שאתה מחפש הוא ב-group 1

            📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

            chagoldC תגובה 1 תגובה אחרונה
            0
            • chagoldC מנותק
              chagoldC מנותק
              chagold
              השיב לyossiz ב נערך לאחרונה על ידי
              #7

              @yossiz כשאני מסמן ב-Substitution הוא לא נותן לי.
              7bdccba1-bedd-43ac-8d32-44b56d212627-image.png

              yossizY תגובה 1 תגובה אחרונה
              0
              • yossizY מנותק
                yossizY מנותק
                yossiz
                השיב לchagold ב נערך לאחרונה על ידי yossiz
                #8

                @chagold לצערי עוד לא הבנתי במה אתה מתקשה
                זה עובד בדיוק כמו שהייתי מצפה
                (ה-\1 תופס את התוכן שבין התגיות highlight)

                📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                chagoldC תגובה 1 תגובה אחרונה
                0
                • chagoldC מנותק
                  chagoldC מנותק
                  chagold
                  השיב לyossiz ב נערך לאחרונה על ידי chagold
                  #9

                  @yossiz בצד ימין של התמונה הgroup1 תופס את זה. אבל ה\1 בתמונה למטה תופס טקסט הרבה יותר גדול מאשר מה שמופיע בצד ימין. (=הוא תופס את כל הטקסט ולא רק מה שבין התגיות)

                  yossizY תגובה 1 תגובה אחרונה
                  0
                  • yossizY מנותק
                    yossizY מנותק
                    yossiz
                    השיב לchagold ב נערך לאחרונה על ידי
                    #10

                    @chagold כנראה שאתה הבנת שבהחלפה של האתר regex101 אתה מחליף את כל המחרוזת, אבל זה לא ככה, אלא ההחלפה מתבצעת רק על החלק שמתאים לחיפוש

                    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                    chagoldC תגובה 1 תגובה אחרונה
                    1
                    • chagoldC מנותק
                      chagoldC מנותק
                      chagold
                      השיב לyossiz ב נערך לאחרונה על ידי chagold
                      #11

                      @yossiz
                      פספסתי משהו בדוגמא. אני מתקן את השאלה.

                      אני צריך ביטוי שתופס ומחזיר חזרה את החלק הפנימי נטו.

                      בדוגמא הזו כשבוחרים את group 2 הוא מחזיר (מציג) רק את החלק המוחלף דהיינו 987.

                      הבעיה מתחילה במקרה שיש bbcode פנימי, שאז הוא לא מחזיר את כל הבפנים, אלא מסלק את התגית (של ה-b) ומחזיר את הכותרת החיצונית (highlight) והפנימית ביותר (xxxxxx).

                      בפתרון שלך בהחלפה בודדת אז באמת הוא מחזיר את מה שאני צריך. אבל במקרה של הטקסט הארוך הוא לא נותן חזרה את מה שבין התגיות, אלא מוחק את הטקסט שברג'קס לגמרי.

                      תודה רבה רבה על הטרחה

                      yossizY תגובה 1 תגובה אחרונה
                      0
                      • yossizY מנותק
                        yossizY מנותק
                        yossiz
                        השיב לchagold ב נערך לאחרונה על ידי
                        #12

                        @chagold אפשר יותר רקע?

                        כי מה שאתה מבקש בדיוק, קשה לממש בצורה שאתה מנסה (אאל"ט, אולי יש פה גורו ברגקס ( @dovid ?) שיתקן אותי)

                        להבנתי אתה מבקש החלפה יחידה ברג'קס ש:

                        • ילכד לתוך קבוצה כל המופעים של תבנית מסויימת
                        • יחליף את כל המחרוזת במה שנלכד לתוך הקבוצות

                        אני לא מכיר דרך כרגע לעשות את זה

                        אולי זה יעזור שתסביר יותר את הדרישה ולא נסיון המימוש שלך

                        אם השאלה היא בהמשך לשאלות קודמות, אז נראה שיש לך טקסט bbcode בעמודה ב-mysql ואתה רוצה בפונקציה יחידה לחלץ מתוכו רק את החלק שבין תגיות highlight?

                        אתה ב-mariadb? כי ב-mysql אתה די מוגבל בפיצ'רים של רג'קס

                        📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                        chagoldC תגובה 1 תגובה אחרונה
                        1
                        • yossizY מנותק
                          yossizY מנותק
                          yossiz
                          כתב ב נערך לאחרונה על ידי yossiz
                          #13

                          עדכון:
                          אני עדיין לא בטוח שהבנתי את הדרישה בצורה נכונה

                          אבל אם הבנתי נכון, חשבתי על פתרון די פשוט
                          במקום לחפש את המחרוזות הרצויות, מחפשים מה שלא רצוי ומוחקים אותו

                          זה הרגקס שעשיתי:

                          /(^|\[\/highlight]).*?(\[highlight]|$)/sg
                          

                          https://regex101.com/r/6sQK9Y/1

                          האם זה עונה על הצורך או שעדיין לא?

                          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                          תגובה 1 תגובה אחרונה
                          1
                          • chagoldC מנותק
                            chagoldC מנותק
                            chagold
                            השיב לyossiz ב נערך לאחרונה על ידי chagold
                            #14

                            @yossiz אמר בעזרה בregex bbcode בתוך bbcode:

                            @chagold אפשר יותר רקע?

                            כי מה שאתה מבקש בדיוק, קשה לממש בצורה שאתה מנסה (אאל"ט, אולי יש פה גורו ברגקס ( @dovid ?) שיתקן אותי)

                            להבנתי אתה מבקש החלפה יחידה ברג'קס ש:

                            • ילכד לתוך קבוצה כל המופעים של תבנית מסויימת
                            • יחליף את כל המחרוזת במה שנלכד לתוך הקבוצות

                            אני לא מכיר דרך כרגע לעשות את זה

                            אולי זה יעזור שתסביר יותר את הדרישה ולא נסיון המימוש שלך

                            אם השאלה היא בהמשך לשאלות קודמות, אז נראה שיש לך טקסט bbcode בעמודה ב-mysql ואתה רוצה בפונקציה יחידה לחלץ מתוכו רק את החלק שבין תגיות highlight?

                            אתה ב-mariadb? כי ב-mysql אתה די מוגבל בפיצ'רים של רג'קס

                            הרקע הוא כמו שכתבת עמודה בטבלה שעם הטקסט (ייבוא מפורום שבphpbb).

                            אני בmariadb.
                            לא צריך ללכוד את כל המופעים. מספיק פעם אחת, ולא נורא שאני יצטרך להריץ שוב ושוב בשביל כל המופעים (אחרי שמופע אחד מתוקן אז בהרצה הבאה הוא יקח כבר את הבא בתור).
                            את מה שנלכד אני צריך להחליף, אבל לזה אני כבר משתמש בפונקציית REGEXP_REPLACE (שפרמטר החיפוש בו הוא ביטוי הרג'קס).

                            yossizY dovidD 2 תגובות תגובה אחרונה
                            0
                            • yossizY מנותק
                              yossizY מנותק
                              yossiz
                              השיב לchagold ב נערך לאחרונה על ידי
                              #15

                              @chagold אחת ולתמיד! אני עדיין לא מבין מה הדרישה 😞

                              האם הרג'קס שהבאתי עונה על הדרישה? אם לא, האם תוכל להסביר ברור מה אמור להיות הפלט של ההחלפה

                              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                              תגובה 1 תגובה אחרונה
                              1
                              • dovidD מנותק
                                dovidD מנותק
                                dovid ניהול
                                השיב לchagold ב נערך לאחרונה על ידי
                                #16

                                @chagold הכי פשוט שתביא כמה דוגמאות של קלט וליד כל אחד התוצאה הרצויה לך בסופו של דבר (לא שלב ביניים).

                                מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                תגובה 1 תגובה אחרונה
                                0
                                • chagoldC מנותק
                                  chagoldC מנותק
                                  chagold
                                  כתב ב נערך לאחרונה על ידי chagold
                                  #17

                                  @yossiz בmariadb זה לא עובד

                                  @dovid אמר בעזרה בregex bbcode בתוך bbcode:

                                  @chagold הכי פשוט שתביא כמה דוגמאות של קלט וליד כל אחד התוצאה הרצויה לך בסופו של דבר (לא שלב ביניים).

                                  זה הדוגמא, כשהפלט אמור להיות:

                                  [highlight][b]אלא כדי שיהיו פנויין בתורה וחכמתה[/b][/highlight]
                                  

                                  ו

                                  [highlight][b] כדי שיזכו לחיי העולם הבא, כמו שביארנו בהלכות תשובה. [/b][/highlight]
                                  
                                  

                                  עוד דוגמא:

                                  טקסט מקורי:

                                  abcd[highlight][b]987[/b][/highlight]efg
                                  

                                  ואני צריך לקבל ביד את

                                  [highlight][b]987[/b][/highlight]
                                  

                                  עריכה: אחרי שאני מקבל את הנתון הזה, יבוא השלב הבא של להחליף את הטקסט בטקסט שלא כולל את התגיות של highlight. אבל את זה מקסימום אוכל לכאו' לבצע עם right/left/ substr.

                                  תגובה 1 תגובה אחרונה
                                  0

                                  בא תתחבר לדף היומי!
                                  • התחברות

                                  • אין לך חשבון עדיין? הרשמה

                                  • התחברו או הירשמו כדי לחפש.
                                  • פוסט ראשון
                                    פוסט אחרון
                                  0
                                  • דף הבית
                                  • קטגוריות
                                  • פוסטים אחרונים
                                  • משתמשים
                                  • חיפוש
                                  • חוקי הפורום