Regex: Como verificar se uma string não está vazia ou em branco e não contém o caractere “<” e “>”? [duplicado]

Nov 26 2020

Tenho que usar um regex para verificar se uma string não está vazia ou em branco e não contém ">" "<".

Por exemplo:

  1. " " é inválido;

  2. "a <" é inválido;

  3. "a 6" está certo;

Tentei abaixo do regex, mas não funcionou.


^ (^ \ s *$)|^[^<,>]+$


Como eu poderia definir esta regex? algum tipo poderia me ajudar nisso? obrigado.

Respostas

1 Ivar Nov 26 2020 at 21:52

Tentar

^(?!\s+$)[^<>]+$
  • ^...$ - A string deve começar e terminar com ... (correspondendo a toda a string / linha)
    • (?!...) - Lookahead negativo, string não deve ser seguido por ...
      • \s+$ - Um ou mais caracteres de espaço em branco até o final da string
    • [^<>]+- Qualquer caractere, exceto <e >, uma ou mais vezes

Demonstração ao vivo