Logo Hardware.com.br
Roger_Wolff
Roger_Wolff Membro Senior Registrado
168 Mensagens 1 Curtida

Expressões Regulares no .htaccess - Alguém sabe como resolver esta necessidade?

#1 Por Roger_Wolff 30/07/2010 - 16:27
Olá pessoal, estou quebrando a cabeça com ER no .htaccess para casar uma sequência e não estou conseguindo, talvez alguém possa me ajudar.

É o seguinte, preciso casar uma sequência de 3 caracteres (dígito ou letra) mas pelo menos 1 desses caracteres precisa ser uma letra.

Estou usando essa regra para redirecionamento:
RewriteRule ^([a-zA-Z0-9]{3})$ /idx.php?inc=news&n=$1

Acontece que ela deixa passar também só números sem nenhuma letra que é o que eu não quero.
Queria que passasse: 0xD, 99f, GG1, Ss4, 00a, AAF, GHT, GTA, JJJ, k1K,...
E não passasse: 123, 624, 000, 980, 003,... (só números)


Grato,
pflynn
pflynn Ubbergeek Registrado
5.5K Mensagens 122 Curtidas
#2 Por pflynn
30/07/2010 - 16:48
Uma opção:

([a-zA-Z][a-zA-Z0-9][a-zA-Z0-9])|([a-zA-Z0-9][a-zA-Z][a-zA-Z0-9])|([a-zA-Z0-9][a-zA-Z0-9][a-zA-Z])

apesar de grande, acredito que ela fala por si só. É possível simplificá-la ou mesmo escrevê-la de outras maneiras, mas acredito que essa seja a forma mais "intuitiva".
------------------------------------------------
Muito bom. Mas tijolo não revida!
------------------------------------------------
Roger_Wolff
Roger_Wolff Membro Senior Registrado
168 Mensagens 1 Curtida
#3 Por Roger_Wolff
30/07/2010 - 17:03
pflynn disse:
Uma opção:

([a-zA-Z][a-zA-Z0-9][a-zA-Z0-9])|([a-zA-Z0-9][a-zA-Z][a-zA-Z0-9])|([a-zA-Z0-9][a-zA-Z0-9][a-zA-Z])

apesar de grande, acredito que ela fala por si só. É possível simplificá-la ou mesmo escrevê-la de outras maneiras, mas acredito que essa seja a forma mais "intuitiva".


pflynn,

Realmente, não havia pensado em escrever as possibilidades de forma inteira.


Valeu
Na ImovelaVenda.com.br você anuncia seu imóvel sem custo nenhum, adiciona até 50 fotos, marca o imóvel no Mapa e promove informações que terão visibilidade relevante na internet.

ImovelaVenda.com.br
Roger_Wolff
Roger_Wolff Membro Senior Registrado
168 Mensagens 1 Curtida
#5 Por Roger_Wolff
30/07/2010 - 17:39
Core_Dump disse:
Tenta usar uma RewriteCond negando a URI com 3 numeros, (nao testei)?

RewriteCond %{REQUEST_URI} ! ^([0-9]{3})*
RewriteRule ^([a-zA-Z0-9]{3})$ /idx.php?inc=news&n=$1


Ótima alternativa Core_Dump,

Mas vou deixar pra testar essas idéias na madrugada pois o servidor tá tendo bastante acesso agora.


Valeu pela dica,
Na ImovelaVenda.com.br você anuncia seu imóvel sem custo nenhum, adiciona até 50 fotos, marca o imóvel no Mapa e promove informações que terão visibilidade relevante na internet.

ImovelaVenda.com.br
Roger_Wolff
Roger_Wolff Membro Senior Registrado
168 Mensagens 1 Curtida
#6 Por Roger_Wolff
31/07/2010 - 03:54
Core_Dump disse:
Tenta usar uma RewriteCond negando a URI com 3 numeros, (nao testei)?

RewriteCond %{REQUEST_URI} ! ^([0-9]{3})*
RewriteRule ^([a-zA-Z0-9]{3})$ /idx.php?inc=news&n=$1


Era isso que eu precisava, fiz uns ajustes e ficou assim:
RewriteCond %{REQUEST_URI}                            !^\/([0-9]*)$
RewriteRule ^([a-zA-Z0-9]{3})$ /idx.php?inc=news&n=$1
valeu ze_bonitinho.png
Na ImovelaVenda.com.br você anuncia seu imóvel sem custo nenhum, adiciona até 50 fotos, marca o imóvel no Mapa e promove informações que terão visibilidade relevante na internet.

ImovelaVenda.com.br
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal