Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   REGEX para eliminar comentarios (https://www.clubdelphi.com/foros/showthread.php?t=53785)

rubencho 29-02-2008 16:23:37

REGEX para eliminar comentarios
 
Hola...estoy tratando de eliminar los comentarios de un codigo de aproximadamente 45000 lineas...pero solo quiero eliminar los que para mi son validos...tengo un ejemplo de lo que se podrìa o no eliminar.....alguein me puede echar una mano con la expresion regular?

line xxx1 with valid code (don´t erase)
line xxx2 whit valid code (don´t erase)
line with valid code plus valid comment //this is a valid comment
line with valid code, plus spaces at begin plus valid comment //valid comment
line with tabs at beginning and valid comment //valid comment
//this line is safe to be deleted
//this line also is safe to be deleted
//this line also is safe to be deleted

keyboy 29-02-2008 17:40:26

¿Te refieres, pues, a los comentarios que ocupan una línea para ellos solos?

Quizá algo como

Código:

^//.*\n
O sea, cualquier cosa (.*) que esté entre dos diagonales (//) y la línea siguiente (\n), y que dichas dos diagonales estén al principio de la línea (^).

Claro que la sintaxis variará según el motor de expresiones regulares que uses. Quizá, por ejemplo, el caracter / haya que escaparlo con \:

Código:

^\/\/.*\n
Bye

rubencho 29-02-2008 18:05:53

Hmm creo que por el formato que muestra esta pagina no se ven algunas cosas que tengo en el texto original..intentare etiqutarlo como CODE a ver si me hago entender

Código:

line xxx1 with valid code (don´t erase)
line xxx2 whit valid code (don´t erase)

line with valid code plus valid comment //this is a valid comment

      line with valid code, plus spaces at begin plus valid comment    //valid comment
    line with tabs at beginning and valid comment        //valid comment

//this line is safe to be deleted

    //this line also is safe to be deleted
        //this line also is safe to be deleted

Parece que aqui si se ven algunos detalles..
Algunas lineas comienzan con tabuladores, otras con espacios y las lineas que tienen codigo antes de la doble barra no deberian ser tenidas en cuenta. En el ejemplo:
el match deberia coger las lineas 9, 11 y 12. Las lineas 4, 6 y 7 no deben coger..porque son comentarios que si necesito

keyboy 29-02-2008 18:12:18

Pues entonces algo así:

Código:

^[ \t]*//.*\n
Bye

rubencho 29-02-2008 20:08:47

Gracias
 
Gracias por tu oportuna respuesta...


La franja horaria es GMT +2. Ahora son las 03:57:27.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi