Я хочу проверить, содержит ли строка специальные символы.Я использую следующее regex
для этого
Попытка онлайн с regex101 работает отлично.Однако, когда я включаю это в свой код, это не работает.Всегда возвращается false ... Почему это так?
Поле input
, обрабатывающее вводимые пользователем данные.
<input
placeholder={placeholder}
type='text'
autoComplete='off'
value={this.state.text}
onChange={event => this.handleOnChange(event)}
/>
Обработка handleOnChange
, когда что-то набирается.
handleOnChange = event => {
const text = event.target.value;
this.setState({
text
});
this.checkForSpecialCharacter(text)
}
checkForSpecialCharacter = text => {
const specialCharacters = new RegExp('/[ !@#$%^&*()_+=`~:;",.\-\[\]\{\}\'\\\|\<\>\/\?]/');
console.log(specialCharacters.test(text)) // <- logs false
this.setState({
foo: {
...this.state.foo,
specialCharacter: specialCharacters.test(text),
}
});
}