משתמש:מהדורה קמא/בדיקת עוגנים.js: הבדלים בין גרסאות בדף

קפיצה לניווט קפיצה לחיפוש
(תיקון)
(בדיקה)
שורה 27: שורה 27:
     }
     }
   });
   });
// פונקציה להחלפת עוגנים כפולים
function replaceDuplicateAnchors() {
function replaceDuplicateAnchors() {
     var textArea = $('#wpTextbox1');
     var textArea = $('#wpTextbox1');
     var content = textArea.val();
     var content = textArea.val();
     var anchorRegex = /\{\{עוגן(?:1)?\|([^}|]+)(?:\|([^}]+))?\}\}/gi;
     var anchorRegex = /\{\{עוגן(?:1)?\|([^}|]+)(?:\|([^}]+))?\}\}/gi;
     var anchors = new Map(); // שימוש במבנה נתונים Map כדי למנוע כפילויות
     var anchors = new Map();
     var match;
     var match;


שורה 38: שורה 39:
         var text = match[2] !== undefined ? match[2] : key;
         var text = match[2] !== undefined ? match[2] : key;
         if (!anchors.has(key)) {
         if (!anchors.has(key)) {
             anchors.set(key, []); // אם אין מפתח כזה עד כה, הוסף אותו למפתחות המפה
             anchors.set(key, []);
         }
         }
         anchors.get(key).push({ index: match.index, length: match[0].length, text: text }); // הוסף את המידע כערך למפתח המתאים
         anchors.get(key).push({ index: match.index, length: match[0].length, text: text });
     }
     }


שורה 48: שורה 49:
                 var replacement;
                 var replacement;
                 if (i > 0) {
                 if (i > 0) {
                     var counter = i + 1; // מספר התוקף הנוכחי
                     var counter = i + 1;
                     replacement = `{{עוגן|${pos.text}${counter}|${pos.text}}}`;
                     replacement = `{{עוגן|${pos.text}${counter}|${pos.text}}}`;
                 } else {
                 } else {
שורה 62: שורה 63:
     alert('הוחלפו עוגנים כפולים בהצלחה');
     alert('הוחלפו עוגנים כפולים בהצלחה');
}
}
// קריאה לפונקציה replaceDuplicateAnchors כאשר הדף מוכן
$(document).ready(function () {
    replaceDuplicateAnchors();
});
});
});
       });
       });