freeCodeCamp/curriculum/challenges/arabic/02-javascript-algorithms-an.../regular-expressions/find-characters-with-lazy-m...

2.3 KiB

id title challengeType videoUrl localeTitle
587d7db6367417b2b2512b9b Find Characters with Lazy Matching 1 العثور على شخصيات مع مطابقة كسول

Description

في التعبيرات العادية ، تعثر المطابقة greedy على أطول جزء ممكن من السلسلة التي تناسب نمط regex وتعرضها كمطابقة. ويطلق على البديل اسم "مطابقة lazy ، والتي تجد أصغر جزء ممكن من السلسلة التي تفي بنمط regex. يمكنك تطبيق regex /t[az]*i/ على السلسلة "titanic" . هذا التعبير المعتاد هو في الأساس نمط يبدأ بـ t ، وينتهي بـ i ، ويحتوي على بعض الأحرف بينهما. تكون التعابير العادية greedy بشكل افتراضي ، لذا فإن المباراة ستعيد ["titani"] . يجد أكبر سلسلة فرعية ممكنة لتناسب النمط. ومع ذلك ، يمكنك استخدام ? شخصية لتغييره إلى مطابقة lazy . تطابق "titanic" مع regex المعدلة من /t[az]*?i/ returns ["ti"] .

Instructions

أصلح regex /<.*>/ لإرجاع علامة HTML <h1> وليس النص "<h1>Winter is coming</h1>" . تذكر حرف البدل . في التعبير العادي يطابق أي حرف.

Tests

tests:
  - text: يجب أن يكون متغير <code>result</code> صفيفًا به <code>&lt;h1&gt;</code> فيه
    testString: 'assert(result[0] == "<h1>", "The <code>result</code> variable should be an array with <code>&lt;h1&gt;</code> in it");'

Challenge Seed

let text = "<h1>Winter is coming</h1>";
let myRegex = /<.*>/; // Change this line
let result = text.match(myRegex);

Solution

// solution required