Criar expressão regular

  • Autor Autor kanikase
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
Status

🔒 Este tópico está fechado para novas respostas.

⏰ Apenas o criador do tópico pode solicitar a reabertura de seus próprios tópicos, mas apenas dentro dos 60 dias anteriores à última atualização.

kanikase

kanikase

Préstamo impago
1
Xi
Programador
Verificación en dos pasos activada
Suscripción a IA
Hola betas necesito ayuda con javascript.
Estoy intentando crear una expresión regular, pero no puedo, no funciona la forma en que lo hago, tengo este código:

PHP:
var i,exp,expresion = '/';
    for (i = 0; i < objeto.length; i++) {
        expresion += (objeto.length-1 > i) ? objeto[i]+'|' : objeto[i];
    }
    expresion += '/';
    alert(expresion); // sale /a|b|c|d/
    exp = new RegExp(expresion); //así no funciona, pero si pongo manualmente /a|b|c|d/ sí funciona...
    for (i = 0; i < objeto2.length; i++) {
        alert(exp.test(objeto2[i])); //sale false y debería ser true
    };

Espero que me haya explicado y me puedan ayudar :encouragement:
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
mmm creo que es porque le estas pasando como string "/a|b|c|d/" y tendria que ser una expresion regular...
esto (asi es como funciona):
HTML:
var x = /a|b|c|d/;
es distinto de (asi no funciona)
HTML:
var x = "/a|b|c|d/";
 
mmm creo que es porque le estas pasando como string "/a|b|c|d/" y tendria que ser una expresion regular...
esto (asi es como funciona):
HTML:
var x = /a|b|c|d/;
es distinto de (asi no funciona)
HTML:
var x = "/a|b|c|d/";

Sí es el problema, pero cómo lo puedo solucionar :grumpy:

- - - Actualizado - - -

mmm creo que es porque le estas pasando como string "/a|b|c|d/" y tendria que ser una expresion regular...
esto (asi es como funciona):
HTML:
var x = /a|b|c|d/;
es distinto de (asi no funciona)
HTML:
var x = "/a|b|c|d/";

Ya supe cómo 😀 al final queda así

PHP:
var i,exp,expresion;
    for (i = 0; i < objeto.length; i++) {
        expresion += (objeto.length-1 > i) ? objeto[i]+'|' : objeto[i];
    }
    expresion = new RegExp(expresion)
    exp = new RegExp(expresion);
    for (i = 0; i < objeto2.length; i++) {
        alert(exp.test(objeto2[i]));
    };
 
Última edição:
Status

🔒 Este tópico está fechado para novas respostas.

⏰ Apenas o criador do tópico pode solicitar a reabertura de seus próprios tópicos, mas apenas dentro dos 60 dias anteriores à última atualização.

Voltar
Topo