Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re^4: Case insensitive string comparison

by DAN0207 (Acolyte)
on Jun 30, 2020 at 12:09 UTC ( [id://11118715]=note: print w/replies, xml ) Need Help??


in reply to Re^3: Case insensitive string comparison
in thread Case insensitive string comparison

Thank you very much for all the replies.To be more clear, now i am working on the below line of code to get the output.I am trying to write some if condition here so that SGWa-i is renamed to SGWa-i_LOWCASE and SGWA-I is renamed to SGWA-I_UPCASE.Sample data is provided below,Earlier i provided the data file with values but here i am providing the basic sketch file which is supposed to be referred

Sample data

sgw sketch sgwpts1 format EMS,SGW1,%date%,%time%,%sgw-vpnname%,%sgw-vp +nid%,%sgw-servname%,%sgw-servid% sgw sketch sgwptsh format EMS,SGWh,%date%,%time%,%sgw-vpnname%,%sgw-vp +nid%,%sgw-servname%,%sgw-servid% sgw sketch sgwptsi format EMS,SGWi,%date%,%time%,%sgw-vpnname%,%sgw-vp +nid%,%sgw-servname%,%sgw-servid% sgw sketch, sgwptsH format, EMS,SGWH,%date%,%time%,%sgw-vpnname%,%sgw- +vpnid%,%sgw-servname%,%sgw-servid% sgw sketch sgwptsI format EMS,SGWI,%date%,%time%,%sgw-vpnname%,%sgw-vp +nid%,%sgw-servname%,%sgw-servid%
Lines of code i am writing
sub load_sketch { my ($sketch_file) = @_; my %all_sketches = (); open(DAT, $sketch_file) || die("Could not open file $sketch_file!" +); my @lines = <DAT>; close(DAT); foreach (@lines) { s/[\r\n\s%]+//g; my @all_columns = split(',', $_); $all_sketches{ uc($all_columns[1]).'STAT' } = [ @all_columns ] +; # Output file will have SGWSTAT in its name } return %all_sketches; } 1; # tells perl that the package is ready to run
Please help me in the above code on how to rename or please suggest if there are better ways to handle it here

Replies are listed 'Best First'.
Re^5: Case insensitive string comparison
by AnomalousMonk (Archbishop) on Jun 30, 2020 at 17:25 UTC

    Your sample data seems inconsistent and the code is therefore confusing (update: to me :).

    Firstly, it seems as if the name of the sample data file is being passed to load_sketch() as the $sketch_file string. Is this true?

    Secondly, most lines of the sample data are in the format
        sgw sketch sgwpts1 format EMS,SGW1,%date%,%time%,%sgw-vpnname%,%sgw-vpnid%,%sgw-servname%,%sgw-servid%
    whereas line 4 is
        sgw sketch,sgwptsH,format EMS,SGWH,%date%,%time%,%sgw-vpnname%,%sgw-vpnid%,%sgw-servname%,%sgw-servid%
    (commas are in different columns). Executing the statement
        my @all_columns = split(',', $_);
    on the sample data will produce substrings with very different formats in $all_columns[1].

    Please add an update (see How do I change/delete my post?) to either confirm that the originally posted sample data is in fact correct, or else fix the sample data. (Of course, please cite any updates/changes/additions/corrections; please see How do I change/delete my post?)


    Give a man a fish:  <%-{-{-{-<

      It was a mistake from my side regarding the data.Please find below the the corrected sample data.Also the name of the sample data file is being passed to load_sketch() as the $sketch_file string.

      Sample data

      sgw sketch sgwpts1 format EMS,SGW1,%date%,%time%,%sgw-vpnname%,%sgw-vp +nid%,%sgw-servname%,%sgw-servid% sgw sketch sgwptsh format EMS,SGWh,%date%,%time%,%sgw-vpnname%,%sgw-vp +nid%,%sgw-servname%,%sgw-servid% sgw sketch sgwptsi format EMS,SGWi,%date%,%time%,%sgw-vpnname%,%sgw-vp +nid%,%sgw-servname%,%sgw-servid% sgw sketch sgwptsH format EMS,SGWH,%date%,%time%,%sgw-vpnname%,%sgw-vp +nid%,%sgw-servname%,%sgw-servid% sgw sketch sgwptsI format EMS,SGWI,%date%,%time%,%sgw-vpnname%,%sgw-vp +nid%,%sgw-servname%,%sgw-servid%

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11118715]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (3)
As of 2024-04-26 00:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found