Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

169
Vistas
Coincidir con varias subcadenas y concatenar

Dado que tengo

 KsKd2s4dAs =AhAd2s4dKs =AsAd2s4dKs 5s5d6s6d2c AsAd6s6d2c =AdQdKdJdTd =AhQhKhJhTh =AsQsKsJsTs

Quiero hacer coincidir todas las subcadenas que comienzan con '=' y concatenarlas con este signo.

La salida debe ser

 KsKd2s4dAs AhAd2s4dKs=AsAd2s4dKs 5s5d6s6d2c AsAd6s6d2c AdQdKdJdTd=AhQhKhJhTh=AsQsKsJsTs

Puedo capturar usando esta expresión regular (=.{10}\s?)+ pero no puedo encontrar una manera conveniente de hacer tal cadena.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Puedes usar

 preg_replace('~(?:\G(?!\A)\s+(?==)|(?<!\S)=)(\S+)~', '$1', $text)

Vea la demostración de expresiones regulares . Detalles :

  • (?:\G(?!\A)\s+(?==)|(?<!\S)=) - ya sea a = char al comienzo de la cadena o justo después de un espacio en blanco o al final de la coincidencia anterior y luego uno o más espacios en blanco seguidos de a = char
  • (\S+) - Grupo 1: uno o más caracteres sin espacios en blanco.

Otra forma es usar preg_replace_callback :

 $text = 'KsKd2s4dAs =AhAd2s4dKs =AsAd2s4dKs 5s5d6s6d2c AsAd6s6d2c =AdQdKdJdTd =AhQhKhJhTh =AsQsKsJsTs'; echo preg_replace_callback('~=(\S+(?:\s+=\S+)*)~', function($m) { return preg_replace('~\s+~', '', $m[1]); }, $text);

Vea la demostración de PHP y la demostración de expresiones regulares .

El =(\S+(?:\s+=\S+)*) coincide con un = y luego captura en el Grupo 1 uno o más espacios que no son espacios en blanco seguidos de cero o más repeticiones de uno o más espacios en blanco, = , y uno o más no espacios en blanco.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda