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

128
Visualizações
¿Cómo extraer contenido entre un paréntesis de apertura y cierre?

Estoy tratando de dividir una cadena en una matriz de contenidos de texto que están presentes dentro de los delimitadores [@ y ] . Solo los caracteres entre [@ y ] pueden coincidir. Al estar provisto de una cadena como ...

 const stringA = '[@Mary James], [@Jennifer John] and [@Johnny Lever[@Patricia Robert] are present in the meeting and [@Jerry[@Jeffery Roger] is absent.'

... se espera el siguiente resultado ...

 [ 'Mary James', 'Jennifer John', 'Patricia Robert', 'Jeffery Roger' ]

Se puede utilizar cualquier lógica que conduzca al resultado esperado.

Una autobúsqueda de una solución trajo la siguiente expresión regular aplicada ...

 stringA.match(/(?<=\[@)[^\]]*(?=\])/g);

Pero el resultado no cumple con los requisitos porque la matriz presenta los siguientes elementos...

 [ 'Mary James', 'Jennifer John', 'Johnny Lever[@Patricia Robert', 'Jerry[@Jeffery Roger' ]
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Cerrar, solo falta la exclusión de [ :

 stringA.match(/(?<=\[@)[^\[\]]*(?=\])/g); // ^^ exclude '[' as well as ']'
about 4 years ago · Juan Pablo Isaza Relatório

0

La expresión regular del OP no presenta el corchete de apertura dentro de la clase de carácter negado, por lo que cambia el /(?<=\[@)[^\]]*(?=\])/g del OP a (?<=\[@)[^\[\]]*(?=\]) ya resuelve el problema del OP para la mayoría de los entornos sin incluir los navegadores Safari debido a la búsqueda posterior que no es compatible .

Solución basada en una expresión regular ... /\[@(?<content>[^\[\]]+)\]/g ... con un grupo de captura con nombre ...

 const sampleText = '[@Mary James], [@Jennifer John] and [@Johnny Lever[@Patricia Robert] are present in the meeting and [@Jerry[@Jeffery Roger] is absent.' // see ... [https://regex101.com/r/v234aT/1] const regXCapture = /\[@(?<content>[^\[\]]+)\]/g; console.log( Array.from( sampleText.matchAll(regXCapture) ).map( ({ groups: { content } }) => content ) );

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