Переменная внутри Regex

  • Автор темы Potapofsky
  • Обновлено
  • 13, May 2024
  • #1
Всем привет, Я пытаюсь поместить в регулярное выражение переменную, но не могу получить нужные результаты.

Я хочу удалить 40 символов из строки «stringToSend», но если я добавлю переменную «characterLength» внутри регулярного выражения, это не сработает.

Если я просто добавлю целое число 40 в регулярное выражение, все будет работать нормально.

Как я могу правильно добавить эту переменную «characterLength» внутри регулярного выражения?

 
<script>
 var stringToSend = '9615f3837cf791fc4302a00ab4adb32dd4171b1e_00004.jpg';
 var characterLength = 40;
 var regexVar = new RegExp(/^\w{' + characterLength + '}\_/); // this regex doesn't work
 // var regexVar = new RegExp(/^\w{40}\_/); // this regex is working
 outputString = stringToSend.replace(regexVar, '');
 outputString = outputString.replace(/\.[^/.]+$/, '');

 console.log(outputString); // Wanted output: 00004
</script>


Код (разметка): Заранее большое спасибо,

Астур

Potapofsky


Рег
17 Apr, 2013

Тем
79

Постов
213

Баллов
618
  • 18, May 2024
  • #2
Привет Астур103! Я редко играю с регулярными выражениями, но, возможно, следующее может помочь:
 

var regexVar = new RegExp('^\\w{' + characterLength + '}\_');
Код (JavaScript):
 

Dvarf1


Рег
01 Jan, 2011

Тем
69

Постов
188

Баллов
533
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно