Простое регулярное выражение не работает в расширении Chrome (всплывающее окно. js) - PullRequest
0 голосов
/ 24 февраля 2020

У меня есть проблема, которая сводит меня с ума. Все остальные регулярные выражения работают, но они «перестают» работать, если в них есть буква.

Строка выглядит следующим образом:

مسلسل The Outsider 2020 الموسم الاول الحلقة 8 مترجمة

Я хочу получить число «8». Текст можно понимать как «Серия x Сезон y Эпизод НОМЕР». Я пытаюсь получить число, используя следующее регулярное выражение:

/(?<=.*الحلقة.*)[0-9]+(?=.*)/g

Он работает нормально, применяя его здесь https://regexr.com/ ИЛИ на консоли. Я реализую это в файле Popup. js.

Следующее регулярное выражение работает без проблем

/(?<=title=")(.*?)(?=")/

Мой JS код для получения регулярного выражения:

        let episodeNumber = item.match(/(?<=title=")(.*?)(?=")/)[0];
        console.log("t: " + episodeNumber);
        episodeNumber = episodeNumber.match(/(?<=.*الحلقة.*)[0-9]+(?=.*)/g);
        console.log(episodeNumber);

Первый журнал дает мне результат ( текст выше) Второй лог дает ноль в консоли. Это действительно странно.

Если регулярное выражение не отформатировано должным образом, замените «الحلقة» на «Эпизод». Это на арабском c, поэтому при форматировании это будет выглядеть странно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...