Добрый вечер, у меня есть компонент инпута. В этом классе есть поле со всеми нужными мне регулярными выражениями:
regexp = {
username: /^[a-zа-я0-9_-]{2,16}$/,
password: /^.{6,18}$/,
email: /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
noRegexp: /./
}
дальше я беру эти регулярки и вставляю их в атрибут pattern инпута:
<input
...={ ... }
pattern={ this.regexp[regexpName].toString().replace( /\//g, '' ) }
...={ ... }
/>
Насколько я понимаю, pattern принимает строку, а не регулярку. отсюда .toString(), а потом методом тыка выяснилось, что с обратными слешами, первым и последним, регуляки не работают ( поле всегда выдает ошибку ), отсюда .replace( /\//g, '' )
И вот я хочу узнать как быть, если у меня в самом регулярном выражении есть обратные слеши? Может написать регулярку, которая будет убирать только первый и последнии слеши?
Подскажите.
Спасибо