Re: [pgbr-geral] Verificar String e detereminar se é alfa ou numérico.
Rubens José Rodrigues escreveu: (...) Minha necessidade: Verificar uma string, numa posição qualquer, se é alfa ou numérico hoje estou fazendo na “unha” algo funcional porém acredito não se a forma mais elegante de testar. Fazendo jus à Navalha de Ockham Via banco utilizando uma string completa: # SELECT 'UmNoMeQuAlQUeR' ~* '^[A-Za-z]+$'; ?column? -- t (1 registro) # SELECT 'UmNoMeQuAlQUeR_C0m_Num3r0s' ~* '^[A-Za-z]+$'; ?column? -- f (1 registro) Via banco utilizando parte de uma string completa: # SELECT SUBSTRING('UmNoMeQuAlQUeR_C0m_Num3r0s',3,6) ~* '^[A-Za-z]+$'; ?column? -- t (1 registro) # SELECT SUBSTRING('UmNoMeQuAlQUeR_C0m_Num3r0s',15,10) ~* '^[A-Za-z]+$'; ?column? -- f (1 registro) Em C ou C++ você também pode fazer uso de expressão regular. []s -- Dickson S. Guedes Administrador de Banco de Dados Confesol - Projeto Colmeia Florianopolis, SC, Brasil (48) 3322-1185, ramal: 26 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Verificar String e detereminar se é alfa ou numérico.
Osvaldo Kussama escreveu: Verifique se é isto ajuda: (...) Vixe, eu acabei dando uma resposta redundante numa outra thread, agora que vi sua resposta. Desculpe pela redundância. :/ -- Dickson S. Guedes Administrador de Banco de Dados Confesol - Projeto Colmeia Florianopolis, SC, Brasil (48) 3322-1185, ramal: 26 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Verificar String e detereminar se é alfa ou numérico.
Em 16/12/08, Rubens José Rodriguesrubens.rodrig...@batistarepresentacoes.com escreveu: Meu cenário: PostgreSQL 8.3.3, compiled by Visual C++ build 1400 Windows Vista Minha necessidade: Verificar uma string, numa posição qualquer, se é alfa ou numérico hoje estou fazendo na unha algo funcional porém acredito não se a forma mais elegante de testar. Verifique se é isto ajuda: bdteste=# SELECT (substring('ABC12345', 2, 1) ~* '[[:digit:]]') AS É numérico; É numérico f (1 registro) bdteste=# SELECT (substring('ABC12345', 4, 1) ~* '[[:digit:]]') AS É numérico; É numérico t (1 registro) bdteste=# SELECT (substring('ABC12345', 2, 1) ~* '[[:alpha:]]') AS É alfabético; É alfabético -- t (1 registro) bdteste=# SELECT (substring('ABC12345', 4, 1) ~* '[[:alpha:]]') AS É alfabético; É alfabético -- f (1 registro) Veja: http://www.postgresql.org/docs/current/interactive/functions-string.html http://www.postgresql.org/docs/current/interactive/functions-matching.html#FUNCTIONS-POSIX-REGEXP Osvaldo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral