[Linuxtrent] Re: Multiple Search & Replace [from the command line]

  • From: Matteo Ianeselli <m.ianeselli@xxxxxxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Sat, 8 Jun 2002 19:09:37 +0200

Daniele Gubert writes:

 > con un trucco costruire un array separato da virgola del tipo 
 > lowercase,casesensitive.
 > 
 > lapappacolpomodoro,laPappaColPomodoro
 > latabellabella,laTabellaBella
 > lamaionesegialla,laMaioneseGialla


Grezzissimo, ma dovrebbe funzionare:

1) Crei un file "tableconvert.txt" come hai indicato sopra,ovvero

   nomedellatabella,nomeDellaTabella


2) Prendi questo script in Perl e salvalo come "converti" nella stessa
   directory dove hai "tableconvert.txt". Brutto, ma funziona.

----------------------------------------------------------------------
open(MAPPA,"tableconvert.txt") or die "*** tableconvert.txt?";

while(<MAPPA>)
{
    chomp;
    ($lowercase,$mixedcase) = split /,/;
    $mappa{$lowercase} = $mixedcase;
}

close MAPPA;

while($line=<>)
{
    chomp $line;

    foreach $i (keys %mappa)
    {
        $line =~ s/$i/$mappa{$i}/g;
    }

    print "$line\n";
}

----------------------------------------------------------------------

3) perl converti dump.sql > dumpconvertito


Brutto, ma funge. Occhio a non avere spazi o righe extra in
tableconvert.txt! :-)
-- 
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con SOGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxxxxxx


Other related posts: