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

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

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

עזרה בREGEX

מתוזמן נעוץ נעול הועבר תכנות
11 פוסטים 6 כותבים 194 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • שואףש מנותק
    שואףש מנותק
    שואף
    כתב ב נערך לאחרונה על ידי שואף
    #1

    יש לי HTML שיש בו לינקים. יש שני סוגי לינקים. לינק שמציג טקסט (ובלחיצה על הטקסט פותח הלינק), ולינק שמציע הלינק עצמו.
    אני רוצה למחוק מהטקסט כל הלינקים מהסוג השני.
    עשיתי REGEX

    #<a .*>http.*</a>#isU
    

    וזה HTML לדוגמא

    <body>
    <a href="https://www.test.co.il">
    text1
    </a></td>
    </tr>
    </table>
    </td>
    </tr>
    <tr>
    <td
    style="">
    <a
    href="https://www.test.co.il/"
    style="">https://www.test.co.il/a.php</a></td>
    </body>
    

    אבל זה תופס מתחילת התגית a הראשונה עד סוף התגית האחרונה.
    איפה טעיתי? ניסיתי עם פרמטרים שונים, בלי U, לא עזר כלום
    תודה רבה

    https://regexr.com/4qgth

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

    ליצירת קשר: admin@i-call.me

    הידד! גישה למייל גם בלי מחשב ואינטרנט!

    תגובה 1 תגובה אחרונה
    0
    • yossizY מנותק
      yossizY מנותק
      yossiz
      כתב ב נערך לאחרונה על ידי
      #2
      <a[^>]*>http.*<\/a>
      

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

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

        @yossiz אמר בעזרה בREGEX:

        [^>]

        אתה גאון!! לא חשבתי על זה.
        אבל זה לא פיתרון נקי.. זה בעל'בתיש, אין צורה לכתוב את זה שלא יעשה את הבעייה?

        ליצירת קשר: admin@i-call.me

        הידד! גישה למייל גם בלי מחשב ואינטרנט!

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

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

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

          תגובה 1 תגובה אחרונה
          4
          • dovidD מחובר
            dovidD מחובר
            dovid ניהול
            כתב ב נערך לאחרונה על ידי
            #5

            @dovid אמר בRegex - ביטויים רגולריים:

            הערה, יש מושג כימות עצלן: כל מצייני הכמות מנסים תמיד למצוא את המקסימום. למשל אם נחפש אלמנט HTML שזה בעצם טקסט מוקף זויות, אנו עשויים לחפש "<.+>" - משמעות: סוגריים זויתיות שביניהם 1 או יותר של תו כל שהוא. כעת אם יש כמה זוגות של כאלה בטקסט במקום למצוא כל אחד לעצמו הוא יתפוס מהראשון עד האחרון ברציפות! הנה דוגמה. זה התנהגות הברירת מחדל שנקראת חמדנית. ההיפך של זה נקרא התנהגות עצלנית והיא מושגת ע"י הוספת סימן שאלה אחרי מציין הכמות - הכוכבית או הפלוס, הנה דוגמא עובדת. המשמעות היא להעדיף את ההתאמה המינימלית.

            כלומר ככה יעבוד:

            <a .*?>.*?<\/a>
            

            https://regexr.com/4qh0e

            יש לציין שבPHP יש דגל של U לרג'קס, שמשמעותו Ungreedy - לא חמדן, אלא עצלן.
            ואז אפשר להשתמש עם כוכבית לבד.

            אגב לטעמי הפתרון של @yossiz מצויין.

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

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

            תגובה 1 תגובה אחרונה
            1
            • dovidD מחובר
              dovidD מחובר
              dovid ניהול
              כתב ב נערך לאחרונה על ידי
              #6

              אבל סתם ככה מאוד מעניין אותי מה המטרה כי ייתכן שעדיף לבצע את זה אחרת לגמרי.

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

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

              תגובה 1 תגובה אחרונה
              1
              • י מנותק
                י מנותק
                יוסף בן שמעון
                כתב ב נערך לאחרונה על ידי יוסף בן שמעון
                #7
                <a(.+?href="http).+?>.+?<\/a>
                
                תגובה 1 תגובה אחרונה
                0
                • שואףש מנותק
                  שואףש מנותק
                  שואף
                  כתב ב נערך לאחרונה על ידי שואף
                  #8

                  @dovid
                  להפוך HTML לטקסט, בלי לאבד שום טקסט מצד אחד, ומצד שני למחוק הלינקים

                  ליצירת קשר: admin@i-call.me

                  הידד! גישה למייל גם בלי מחשב ואינטרנט!

                  WWWW תגובה 1 תגובה אחרונה
                  0
                  • י מנותק
                    י מנותק
                    יוסף בן שמעון
                    כתב ב נערך לאחרונה על ידי
                    #9

                    מעניין למה האתר הוריד לי את הסלש?
                    <a(.+?href="http).+?>.+?</a>

                    תגובה 1 תגובה אחרונה
                    1
                    • WWWW מנותק
                      WWWW מנותק
                      WWW
                      השיב לשואף ב נערך לאחרונה על ידי
                      #10

                      @שואף אמר בעזרה בREGEX:

                      להפוך HTML לטקסט, בלי לאבד שום טקסט מצד אחד, ומצד שני למחוק הלינקים

                      אני אל מבין למה אתה לא משתמש עם הפונקציה הנורמלית של PHP להסרת תגים?
                      ואז תמחק כל URL עם REGEX סטנדרטי.

                      WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

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

                        @שואף אמר בעזרה בREGEX:

                        @yossiz אמר בעזרה בREGEX:

                        [^>]

                        אתה גאון!! לא חשבתי על זה.
                        אבל זה לא פיתרון נקי.. זה בעל'בתיש, אין צורה לכתוב את זה שלא יעשה את הבעייה?

                        זה גם מה שאני עשיתי בעבר, וזה הדבר היחיד שעזר לי בזמנו (אז הייתי צריך לחפש את ה-,'href' של הלינקים)

                        להיות איש נחמד זה מחייב...

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

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

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

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