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

118
Visualizações
Regex para la última letra mayúscula en la cadena

Tengo una expresión regular implementada en javascript que verifica todas las letras mayúsculas en una cadena:

.match(/[AZ]+[^AZ]*|[^AZ]+/g)

luego agrega un espacio por .join(" ")

–

¿Cómo puedo escribir una expresión regular que encuentre solo la última letra mayúscula y luego se una a un espacio antes de esa letra? Gracias por tu ayuda.

—

Ejemplo de entrada: "HelloMyNameIsNick"

Resultado ideal: "HelloMyNameIs Nick"

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Para agregar un espacio antes de la última letra mayúscula, haga coincidir con avidez todo seguido de una sola letra mayúscula:

 "ABCabcABC".replace(/(.*)([AZ])/, "$1 $2") "ABCabcAB C"

Para agregar un espacio antes de la última letra mayúscula para cada secuencia de mayúsculas, haga coincidir una letra mayúscula que no esté seguida de otra letra mayúscula:

 "ABCabcAB".replaceAll(/([AZ](?![AZ]))/g, " $1") "AB CabcA B"
about 4 years ago · Juan Pablo Isaza Relatório

0

Actualizar

 'HelloMyNameIsNick'.replace(/([^ \n])([AZ][^AZ]*$)/gm, '$1 $2')

Casos de prueba:

 console.log(` HelloMyNameIsNick Hello Hello HELLO HellO HeLLo Hello Test HELLO TEST hello test HELLO 1$@(😎-.aa HELLO 1$@(😎-.Aa `.replace(/([^ \n])([AZ][^AZ]*$)/gm, '$1 $2'))

Echa un vistazo a los casos de prueba que se manejan correctamente:

 Hello Hello Hello Test

Respuesta anterior que solo encuentra la última mayúscula

lo que buscas es

 /[AZ](?!.*[AZ].*)/gm

Zona de juegos con pruebas

Solo encuentra la última letra mayúscula.

Si desea encontrar la última letra en el texto completo en lugar de cada línea, puede reemplazar m (línea múltiple) por s (línea única):

 /[AZ](?!.*[AZ].*)/gs

Zona de juegos con pruebas

*Nota: Es posible que el indicador / /s no sea compatible con todos los navegadores.

(?!ABC) se refiere a la anticipación negativa. Comprueba las condiciones en expresión pero no las incluye en el resultado final. Más información

about 4 years ago · Juan Pablo Isaza Relatório

0

Utilice un cuantificador no codicioso:

 /[A-Za-z]*?([AZ])[^AZ]*/

Le sugiero que agregue anclas de inicio y final para asegurarse de que está haciendo coincidir toda la cadena; de lo contrario, el patrón segmentará las cadenas:

 /^[A-Za-z]*?([AZ])[^AZ]*$/

Pruébelo aquí: https://regex101.com/r/h9Acm6/1

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