Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

236
Visualizações
Regex para valores alfanuméricos y no dos guiones bajos consecutivos guión bajo

Tengo un requisito en javascript para escribir una expresión regular para la siguiente condición

El campo Etiqueta maestra del registro de metadatos personalizados solo puede contener guiones bajos y caracteres alfanuméricos. Debe ser único, comenzar con una letra, no incluir espacios, no terminar con un guión bajo y no contener dos guiones bajos consecutivos.

Si omitimos la parte única, ya que tenemos que verificarla con los registros del sistema, necesito una expresión regular para probar las otras condiciones mencionadas anteriormente.

Aquí hay una expresión que he construido hasta ahora pero no parece funcionar. Soy nuevo en las expresiones regulares, por lo que agradecería cualquier ayuda.

 /^[a-zA-Z]([a-zA-Z0-9][^ ][^__])[^_]*$/
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

La cadena tiene todas las propiedades requeridas si y solo si coincide con la siguiente expresión regular:

 /^[az][az\d]*(?:_[az\d]+)*$/i

Manifestación

La expresión regular se puede dividir de la siguiente manera.

 / ^ # match beginning of string [az] # match a letter [az\d]* # match one or more alphanumeric characters (?: # begin non-capture group _ # match an underscore [az\d]+ # match one or more alphanumeric characters )* # end non-capture group and execute it zero or more times $ # match end of string /i # specify matches of letters to be case-indifferent

Tenga en cuenta que la forma en que evito la presencia de dos guiones bajos seguidos tiene el efecto secundario fortuito de garantizar que el último carácter de la cadena no sea un guión bajo (¡un regalo de promoción!).

about 4 years ago · Juan Pablo Isaza Relatório

0

Usted podría estar buscando

 ^(?!_|\d)(?!.*__)(?!.*_$)\w+$

Vea una demostración en regex101.com .


En JavaScript :

 const regex = /^(?!_)(?!.*__)(?!.*_$)\w+$/gm; const str = `_ A abcd _ 123 some_spaces not_any_spaces__ 1test34 correct_thing`; let m; while ((m = regex.exec(str)) !== null) { // This is necessary to avoid infinite loops with zero-width matches if (m.index === regex.lastIndex) { regex.lastIndex++; } // The result can be accessed through the `m`-variable. m.forEach((match, groupIndex) => { console.log(`${match}`); }); }

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda