const regex = /.*\/(.+)(\.html|\/)$/gm;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('.*\\\/(.+)(\\.html|\\\/)$', 'gm')
const str = `
можно убрать экранирование слеша поскольку оно не требуется для апача ( текущий интерпретатор php, мод_реврайт синтаксиса тут нет ;(
Как мы видимм все что нам нужно попадает в первую группу и мы можем привести все окончания ссылок к единому образцу
ававафвыю.ru/fdfadsfad.html
афывавфыавыфавф.ru/3effdfadsdfa/dsfadfa/dsfasdf/asdfasd/fasdfasdfa/fadfadsff.html/
афывавфыавыфавф.ru/3effdfadsdfa/dsfadfa/dsfasdf/asdfasd/fasdfasdfa/fadfadsff.html
афывавфыавыфавф.ru/3effdfadsdfa/dsfadfa/dsfasdf/asdfasd/fasdfasdfa/fadfadsff/
При таких расклада регулярка не работает нет в ТЗ
фывавфыавыфавф.ru/3effdfadsdfa/dsfadfa/dsfasdf/asdfasd/fasdfasdfa/fadfadsff
Поскльку конец нас устраивает
При таких расклада регулярка не работает но тебыло в тз
фывавфыавыфавф.ru/3effdfadsdfa/dsfadfa/dsfasdf/asdfasd/fasdfasdfa/fadfadsff.html/
фывавфыавыфавф.ru/3effdfadsdfa/dsfadfa/dsfasdf/asdfasd/fasdfasdfa/fadfadsff.htm
Поскольку таких не бывает.
Как мы видим в группу \$1 попадает нужная часть урла
\$2 тупо нам не нужна мы ее удаляем.
Теперь по твоим регуляркам, у тебя ошибка ты почему то используешь (.*) - любое включая пусто
А нужно (.+) посколкьу это полразумевает 1 символ как минимум.
регулярка без экрана слешей .*/(.+)(\\.html|/)\$
ну и по идее в апаче сработает такая
регулярка без экрана слешей .*/(.+)(\\.html|/|)\$
ей можно выбрать и еще /fadfadsff окончание, то есть одним правилом схватить сразу все варианты, но нужно проверить.`;
// Reset `lastIndex` if this regex is defined globally
// regex.lastIndex = 0;
let m;
while ((m = regex.exec(str)) !== null) {
// This is necessary to avoid infinite loops with zero-width matches
if (m.index === regex.lastIndex) {
regex.lastIndex++;
}
// The result can be accessed through the `m`-variable.
m.forEach((match, groupIndex) => {
console.log(`Found match, group ${groupIndex}: ${match}`);
});
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions