elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 09:03  


Tema destacado: Recuperar cuenta de Google, GMail, Youtube

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo, raul338)
| | |-+  [Solucionado] Expresion regular para capturar comentarios multilinea de PHP
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Solucionado] Expresion regular para capturar comentarios multilinea de PHP  (Leído 827 veces)
yovaninu


Desconectado Desconectado

Mensajes: 309



Ver Perfil
[Solucionado] Expresion regular para capturar comentarios multilinea de PHP
« en: 8 Enero 2012, 05:55 »

Hola que tal, estoy empezando con esto de las expresiones regulares, la siguiente me captura dentro de una cadena de texto todo lo que este dentro los simbolos de comnetarios de PHP por ejemplo:  
Código:
/* el comentario */

Esta seria su ER
Código:
ER="\/\*\s*([^\s]*)\s*\*\/"

Ahora si desearia capturar aquellos comentarios pero que estan en varias lineas, ¿Cual seria la expresion?
Es decir para comentarios tipo:
Código:
/* esto
es un
comentario */


He tratado de utilizar los modificadores de \n \r \m pero sin resultados.

Saludos




« Última modificación: 18 Enero 2012, 04:22 por yovaninu » En línea
yovaninu


Desconectado Desconectado

Mensajes: 309



Ver Perfil
Re: [Ayuda] Expresion regular para capturar comentarios multilinea de PHP
« Respuesta #1 en: 18 Enero 2012, 04:22 »

Bueno, se que pocos estan interesados en el tema pero pongo las soluciones para aquellos interesados y programadores PHP aunque supongo tambien sirve para todos aquellos lenguajes que utilizan esta forma de comentarios, la idea es capturarlos del archivo fuente (y quitarlos por ejemplo), comentarios de la forma

Código:
// esto es un comentario

o de la forma

Código:
/* esto es
otro comentario
multilinea */

La expresion regular es:

Código:
"(\/\*(\s*|.*?)*\*\/)|(\/\/.*)"


Aunque hay errores con comentarios de la forma
Código:
<?php // comentario ?>

Y como valor agregado tambien he hallado la forma de capturar variables de un archivo php, y como se sabe éstas inician con un simbolo $

y su expresion regular es:

Código:
"(\$(\s*|.*?)(\?|}|&|\||;|\*|/|-|!|<|>|,|\[|\(|\)|\=|\]|\+|\'|\.|" & Chr(34) & "))"

Para todo aquel que le sirva.


En línea
seba123neo
Moderador
***
Desconectado Desconectado

Mensajes: 3.214



Ver Perfil WWW
Re: [Solucionado] Expresion regular para capturar comentarios multilinea de PHP
« Respuesta #2 en: 18 Enero 2012, 05:19 »

Hola, probaste esto:

Regex to strip comments and multi-line comments and empty lines

saludos.
En línea

Mucha gente, especialmente la ignorante desea castigarte por decir la verdad, por ser correcto, por ser tú. Nunca te disculpes por ser correcto, o por estar años delante de tu tiempo.
Si estas en lo cierto, y lo sabes, que hable tu razón. Incluso si eres una minoria de uno solo, la verdad sigue siendo la verdad. M. Gandhi
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Expresión regular « 1 2 »
PHP
IWKY 29 6,938 Último mensaje 25 Enero 2010, 23:57
por ~ Yoya ~
Expresion regular para filtrar una búsqueda
Programación Visual Basic
LeandroA 12 1,173 Último mensaje 30 Agosto 2010, 09:02
por Psyke1
Expresión regular para buscar y reemplazar en notepad++ « 1 2 »
Programación General
vvcepheus7 21 2,377 Último mensaje 11 Diciembre 2011, 01:14
por vvcepheus7
Buscando la expresión regular adecuada para hacer esto
Programación General
‭lipman 0 115 Último mensaje 30 Diciembre 2011, 18:06
por ‭lipman
Expresión regular para eliminar fragmentos de texto en un archivo
Programación General
Mutis99 1 353 Último mensaje 15 Marzo 2012, 19:28
por Bulld0z3r
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines