البرمجة

تحويل مسارات URL باستخدام تعبيرات القوالب في جافا سكريبت

لتحقيق هذا، يمكنك استخدام تعبيرات القوالب (Regular Expressions) في جافا سكريبت لتحويل المسارات كما تريد. إليك كيفية تنفيذ ذلك:

javascript
function moveOneFolderBefore(path) { return path.replace(/(\.\.\/)+/g, function(match) { return match.slice(0, -3); }); } var str = "../../myfolder"; var str0 = "../myfolder"; var str1 = "../../../myfolder"; str = moveOneFolderBefore(str); str0 = moveOneFolderBefore(str0); str1 = moveOneFolderBefore(str1); console.log(str); // Output: "../myfolder" console.log(str0); // Output: "myfolder" console.log(str1); // Output: "../../myfolder"

تعبير القالب (\.\.\/)+ يبحث عن أي عدد من التسلسلات “.. /” في المسار ويحلها بشكل صحيح. دالة replace تأخذ هذا النمط وتقوم بتحويله إلى المسار المطلوب.

المزيد من المعلومات

بالتأكيد، هنا بعض المعلومات الإضافية حول تعبيرات القوالب التي استخدمتها في الكود:

  1. /(\.\.\/)+/g: هذا الجزء من النمط يستخدم للبحث عن أي عدد من التسلسلات “.. /” في المسار. الفقرة (\.\.\/) تعني “.. /” بحيث \. تعني “.” و \/ تعني “/”. و + تعني أن التسلسل يمكن أن يتكرر مرات عديدة.

  2. function(match) { return match.slice(0, -3); }: هذا هو الجزء الذي يقوم بتحويل التسلسلات “.. /” إلى المسار المطلوب. دالة slice تستخدم لإزالة ثلاث حروف من نهاية التسلسل، لذلك تحول “.. /” إلى “../”.

زر الذهاب إلى الأعلى