Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Problema parsing

    Buongiorno a tutti,

    da pochi giorni sto studiando Perl e piano piano comincio a muovermi tra le varie espressioni per fare match, ma soprattutto sostituzione!!!

    Sto imparando molto ma quello che non ho ancora capito è come fare a individuare e stampare il testo che si trova tra 2 determinati delimitatori.

    L' obiettivo è quello di dare in input un file.txt, rimuovere tutti i caratteri tipo tab, spazi e newline, in modo tale da avere un' unica stringa senza interruzioni, e successivamente estratte tutte e le SOLE stringhe che sono racchiuse tra i double quote:

    codice:
    #!/usr/bin/perl
    
    
    open FILE, "file.txt" or die $!;
    
    
    while ( my $line = <FILE> ) {
                                                 $line =~ s/\s//g ;
    
    				             ???????????
    
    				             print $line;
    }
    Non riesco proprio a capire cosa mettere lì in mezzo, sul manuale non trovo nulla a riguardo.

    Grazie a tutti.

  2. #2
    con:

    $line =~ s/\s//g;

    elimini tutti gli spazi contenuti nella stringa passata, pertanto poi non fai altro che stampare la stringa senza spazi.

    Non ho capito il tuo riferimento a dei delimitatori. Se hai dei delimitatori e intendi stampare le stringhe contenute tra essi devi fare:

    codice:
    # delimitatore "##"
    $line = "123##marco##34567"
    $line =~ /##[^#]##/;
    # ovvero trova qualunque cosa differente da "#" contenuto tra due serie di "##"
    print $&;
    Marco Allegretti
    shishii@tiscalinet.it
    Lang: PERL, PHP, SQL.
    Linux user n° 268623 Fedora Core 10, Fedora Core 6, Debian Sarge on mips

  3. #3
    si grazie intendevo proprio quello..non mi era ancora ben chiara la funzione delle parentesi, ora ho capito grazie!!!

    per quanto riguarda la parte che eliminava gli spazi non centrava, era solo una cosa in più che volevo fare io ma non serve...

    GRAZIE

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.