Wow. That is a tough one.
I came up with a Perl solution, but would like to see a more elegant sed/awk solution as well.
Code:
#!/usr/bin/perl
# Auswipe - 10 May 2002
# Auswipe sez "No Guarantees!"
# Auswipe also sez "Test and Double Test! Auswipe is not responsible if anything gets franked!"
# Convert tic into double tic for contractions
# and single tic in names
open(QUERY, "query.txt") || die "$!";
open(NEWQUERY, ">query2.txt") || die "$!";
while ($inputLine = <QUERY>) {
while ($inputLine =~ m/(\w+)'(\w+)/) {
my $fore = $1;
my $aft = $2;
$inputLine =~ s/$fore'$aft/$fore"$aft/g;
};
print NEWQUERY "$inputLine";
};
Sample usage:
Code:
FreeBSD:joeuser:/home/joeuser/sample $ ll
total 8
-rwxr-xr-x 1 joeuser joeuser 519 May 10 10:35 perltic
-rw-r--r-- 1 joeuser joeuser 168 May 10 10:31 query.txt
FreeBSD:joeuser:/home/joeuser/sample $ ./perltic
FreeBSD:joeuser:/home/joeuser/sample $ ll
total 10
-rwxr-xr-x 1 joeuser joeuser 519 May 10 10:35 perltic
-rw-r--r-- 1 joeuser joeuser 168 May 10 10:31 query.txt
-rw-r--r-- 1 joeuser joeuser 168 May 10 10:38 query2.txt
FreeBSD:joeuser:/home/joeuser/sample $ cat query2.txt
NSERT INTO ALL_USER_HOTSPOT_DETAILS (USR_LOGIN,USR_LASTNAME,USR_FIRSTNAME,USR_EMAIL,
PROPERTYNR)
VALUES ('SABRDAG','D"AGOS','SABRINA','sabrina_d"agos@sheraton.com',70)
FreeBSD:joeuser:/home/joeuser/sample $
Two stars. Joe Bob says "Check it out"
|