Find Jobs
Hire Freelancers

expresión regular en PHP

N/A

Cerrado
Publicado hace alrededor de 9 años

N/A

Pagado a la entrega
Estoy buscando un programador PHP que domine bien expresiones regulares. Necesito una función en php que reciba un string y devuelva el mismo string con algunas modificaciones                 string  -------> |FUNCION| ---------> string Preferentemente la función debería usar una única llamanda a la función preg_replace, con una única regla que haga los reemplazos necesarios. Si alguien propone implementarlo de otra forma, sugiero que antes me consulten como lo harían, por una cuestión de performance y de compatibilidad con el servidor en donde va a correr. Quiero estar seguro de que me vaya a  funcionar en el servidro donde va a correr. Se que con preg_replace me va a servir, con otra cosa quizá también sirva, pero por las dudas proponer y consultar antes. ENTRADA: --------------- La función recibe una string cuya longitud puede ir de 0 a 255 caracteres. Llamamos a esta cadena "frase". Dicha "frase" está formada por cualquier secuencia de "palabra" y "separador" Para esta función una "palabra" es cualquier secuencia de "caracter_palabra" cada "caracter_palabra" está formado por una secuencia de 1 o mas de los siguientes caracteres:     minuscula  [a-z]     maysucula  [A-Z]     digito     [0-1]     eñe        [ñÑ]     acentuados [áéíóúÁÉÍÓÚ]     dierisis   [äëïöüÄËÏÖÜ]     guionbajo  [_] "separador": cualquier caracter que no sea caracter_palabra (ejemplo: espacio , ; - . etc etc) Ejemplos frases de una palabra: ---------------------------------------------- a 1 _ el la año jota 1111 m29 marzo joya bergantín BERGANTÍN safdsdafsdfsdfsad 98s7adf987sdf987sdf987sdf97 _sadfw_456456 qwerty Ejemplos de frases de dos palabras: ---------------------------------------------------- el auto belgrano 1126 martín alejando martin-alejando martin;alejando -martin=")")")··ALEJANDO"=·=·"="= 0 0 Ejemplos de frases de 3 palabras: --------------------------------------------------- 12 123 1234 -12;;123--1234?? a bc bcd Las frases pueden tener cualquier número de plabras y separadores, siempre y cuando no superen 255 caracteres de longitud. SALIDA: ----------- Devuelve la misma cadena de entrada pero con algunos reemplazos. Estos reemplazos consisten en que a toda palabra cuya longitud sea de 2 o 3 caracteres se les  agrega un prefijo "XX" y un posfijo "YY", es decir que donde había "dd" queda "XXddYY" Notese que solo agrega "XX" e "YY" a las palabras de longitudo 2 y 3,  Todo lo demás es queda tal cual está. Es decir palabras de longitud 1, palabras de longitud mayor a 3 y separadores quedan intactos. En la planilla adjunta hay ejemplos para mostrar como debería funcionar. Estos mismos ejemplos serán utilizados como parte del test de aceptactión. Si la función que se entrega trabaja bien con esas pruebas seguramente estará correcta. La aceptación de la función incluirá estas pruebas y algunas más, estas otras pruebas serán similares y respetarán la descripción mencionada. Creo que la descripción es clara, pero ante cualquier doda consultar, incluso pueden consultar cual sería la salida correcta para determinada entrada. Podemos agregar estos ejemplos al la aceptación. Nota: ------- La cadena vacía '' es una entrada válida, cuya salida es la misma cadena vacía '' Estoy seguro de que un experto en expresiones regulares va a demorar menos en escribir la función de lo que yo demoré en documentarla y escribir este requerimineto. Estimo que no debería demorar más de media hora en escribirla. No la necesito en forma urgente, pero me gustaría tenerla funcionando dentro de esta semana. Preferiría que a la hora de escogerlos ya la tengan escrita, o por lo menos que estén 100% seguros de poder resolverla. GRACIAS Marcos
ID del proyecto: 12380184

Información sobre el proyecto

Proyecto remoto
Activo hace 9 años

¿Buscas ganar dinero?

Beneficios de presentar ofertas en Freelancer

Fija tu plazo y presupuesto
Cobra por tu trabajo
Describe tu propuesta
Es gratis registrarse y presentar ofertas en los trabajos

Sobre este cliente

Bandera de ARGENTINA
ESPERANZA, Argentina
3,1
2
Miembro desde ene 20, 2011

Verificación del cliente

¡Gracias! Te hemos enviado un enlace para reclamar tu crédito gratuito.
Algo salió mal al enviar tu correo electrónico. Por favor, intenta de nuevo.
Usuarios registrados Total de empleos publicados
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Cargando visualización previa
Permiso concedido para Geolocalización.
Tu sesión de acceso ha expirado y has sido desconectado. Por favor, inica sesión nuevamente.