[oracle@oadb test]$ cat t1.pl
my $sql="where `lc`.`tb`.`xx` = 1 and `tb2` . `id2` = 2 or `id3` > 3 and `id4` >22";
print "$sql is $sql
";
foreach ($sql =~ /(`w+`s*.*s*)/g){
print "$_ is $_
";
push (@str,$_);
};
$sql="";
foreach (@str){
$sql=$sql.$_;
};
$sql =~ s/s+.s+/./g;
my @arr=split (/s+/,$sql);
foreach (@arr){
print "$_ is $_
";
};
[oracle@oadb test]$ perl t1.pl
$sql is where `lc`.`tb`.`xx` = 1 and `tb2` . `id2` = 2 or `id3` > 3 and `id4` >22
$_ is `lc`.
$_ is `tb`.
$_ is `xx`
$_ is `tb2` .
$_ is `id2`
$_ is `id3`
$_ is `id4`
$_ is `lc`.`tb`.`xx`
$_ is `tb2`.`id2`
$_ is `id3`
$_ is `id4`
Vsftp:/root# perl a9.pl
$sql is where `lc`.`tb`.`xx` = 1 and `tb2` . `id2` = 2 or `id3` > 3 and `id4` >22
$_ is `lc`.`tb`.`xx`
$_ is `tb2`.`id2`
$_ is `id3`
$_ is `id4`