in reply to Re^6: Sorting names using Regular Expressions and placing them in different Files.
in thread Sorting names using Regular Expressions and placing them in different Files.

This node falls below the community's minimum standard of quality and will not be displayed.
  • Comment on Re^7: Sorting names using Regular Expressions and placing them in different Files.

Replies are listed 'Best First'.
Re^8: Sorting names using Regular Expressions and placing them in different Files.
by talexb (Chancellor) on Jan 03, 2007 at 17:12 UTC

    OK -- so you want to delete the 'BSC-' and display the original, followed by the new version. The following code does that:

    #!/usr/bin/perl -w use strict; { while(<DATA>) { # Read a line, copy it, and delete 'BSC-' in the copy. chomp; my $copy = $_; $copy =~ s/BSC-//; # Print the original line and the copy. print "$_ $copy\n"; } } __DATA__ -rw-rw-rw- 1 bsmbin bsmbin 303 Dec 3 02:06 BSC-20041202143000 -rw-rw-rw- 1 bsmbin bsmbin 303 Dec 4 23:00 BSC-20041204110000

    On my system, it produces the following output:

    -rw-rw-rw- 1 bsmbin bsmbin 303 Dec 3 02:06 BSC-20041202143000 -rw-rw-r +w- 1 bsmbin bsmbin 303 Dec 3 02:06 20041202143000 -rw-rw-rw- 1 bsmbin bsmbin 303 Dec 4 23:00 BSC-20041204110000 -rw-rw-r +w- 1 bsmbin bsmbin 303 Dec 4 23:00 20041204110000

    Now, you've had a bit of a rough time in the Chatter Box lately .. I recommend that, unless you have a quick question, don't bother asking there. Post a node instead, explaining a) what you are trying to do, b) the approaches you've tried and c) where you think you're stuck. Then don't complain your node isn't getting any replies -- that's only going to reduce the chances you'll get replies.

    And when in doubt, make your examples as simple as possible. Trying to wade through

    -rw-rw-rw- 1 bsmbin bsmbin 303 Dec 3 02:06 BSC-20041202143000

    is tough .. I would have suggested just trying to change

    BSC-20041202143000

    to

    20041202143000

    And for that, just reading Learning Perl or a couple of pages on this site should have helped you solve the problem.

    Good luck.

    Alex / talexb / Toronto

    "Groklaw is the open-source mentality applied to legal research" ~ Linus Torvalds

Re^8: Sorting names using Regular Expressions and placing them in different Files.
by g0n (Priest) on Jan 03, 2007 at 17:13 UTC
    Try working up a very basic case to narrow down the functionality you are having trouble with. Something like this:

    use strict; use warnings; my $var = "-rw-rw-rw- 1 bsmbin bsmbin 303 Dec 4 23:00 BSC-200412041100 +00 -rw-rw-rw- 1 bsmbin bsmbin 303 Dec 4 23:00 20041204110000"; my ($transformed) = $var=~s/BSC-//; print $var . " " . $transformed . "\n";

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

    "If there is such a phenomenon as absolute evil, it consists in treating another human being as a thing."
    John Brunner, "The Shockwave Rider".

    A reply falls below the community's threshold of quality. You may see it by logging in.