Регулярное выражение проверяет строку, если она не содержит список специальных символов и разрешенных специальных символов, за которыми следует буквенно-цифровой - PullRequest
1 голос
/ 07 мая 2020

Я пытаюсь проверить строку, которая

  1. вообще не допускает эти символы:! @ # $% ^ & * | \ [] {}? > <”'; : </li>
  2. разрешить следующее, только если присутствуют также обычные символы:. , + = _ -

Это то, что я пробовал до сих пор, но он не проверяет второе условие, которое проверяет допустимый символ, если в строке

* 1010 также присутствуют буквенно-цифровые c символы *

Тест - https://regex101.com/r/u6osVm/2

1 Ответ

0 голосов
/ 07 мая 2020

Вы можете использовать

^(?=.*[A-Za-z0-9])[A-Za-z0-9.,+=_-]+$

См. демонстрацию регулярных выражений

Подробности

  • ^ - начало строки
  • (?=.*[A-Za-z0-9]) - после любых 0+ символов, кроме символов разрыва строки, должен быть ASCII-буквенно-цифровой c char
  • [A-Za-z0-9.,+=_-]+ - 1+ ASCII-буквы, цифры , ., ,, +, =, _, - символов
  • $ - конец строки.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...