in reply to How to match and extract string after exact 3 digits [RESOLVED]
#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my $str = "902 M 903 Textmessage 904 PO 905 S 906 VAS 907 10 908 3629 +909 85290200429/TYPE=thanos\@test.com 910 NA 911 NA 912 NA 913 NA 914 + NA 917 0 918 NA 919 Wed,_01_Feb_2017_19:56:23_GMT 922 NA 923 PO 924 +NA 925 NA 926 07594d85 927 100 928 20170202035623000+08 929 201702020 +35623000+08 930 NA 931 85260531042/TYPE=thanos2\@test.2.com 932 1 934 + 258;3259 920 NA 921 NA 935 NA 936 NA 938 NA 939 NA 940 thanos-local +942 NA 944 NA 945 4880 946 NA 948 NA 950 454000000927816 953 NA 954 1 +3 955 5.3.0 956 NA 957 07594d85 958 NA 961 13 981 NA 982 0 983 852902 +00429/TYPE=thanos3\@test.3.com 984 Wed,_01_Feb_2017_19:56:23_GMT 985 +RegularThanos 986 TEST 987 NA 988 NA 991 NA 992 NA 993 NA 994 1234567 +89 995 NA 996 NA 997 NA 998 NA 603 0E552E92 602 0 617 NA 618 NA 621 N +A 635 NA 636 NA 637 NA 638 NA"; # Create pairs every three digits my (%hash) = $str =~ /\s*(\d{3})\s+(\S+)/g; foreach my $key ( sort {$a<=>$b}keys %hash ) { print "$key => $hash{$key}\n"; } __END__ 602 => 0 603 => 0E552E92 617 => NA 618 => NA 621 => NA 635 => NA 636 => NA 637 => NA 638 => NA 902 => M 903 => Textmessage 904 => PO 905 => S 906 => VAS 907 => 10 908 => 3629 909 => 85290200429/TYPE=thanos@test.com 910 => NA 911 => NA 912 => NA 913 => NA 914 => NA 917 => 0 918 => NA 919 => Wed,_01_Feb_2017_19:56:23_GMT 920 => NA 921 => NA 922 => NA 923 => PO 924 => NA 925 => NA 926 => 07594d85 927 => 100 928 => 20170202035623000+08 929 => 20170202035623000+08 930 => NA 931 => 85260531042/TYPE=thanos2@test.2.com 932 => 1 934 => 258;3259 935 => NA 936 => NA 938 => NA 939 => NA 940 => thanos-local 942 => NA 944 => NA 945 => 4880 946 => NA 948 => NA 950 => 454000000927816 953 => NA 954 => 13 955 => 5.3.0 956 => NA 957 => 07594d85 958 => NA 961 => 13 981 => NA 982 => 0 983 => 85290200429/TYPE=thanos3@test.3.com 984 => Wed,_01_Feb_2017_19:56:23_GMT 985 => RegularThanos 986 => TEST 987 => NA 988 => NA 991 => NA 992 => NA 993 => NA 994 => 123456789 995 => NA 996 => NA 997 => NA 998 => NA
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: How to match and extract string after exact 3 digits [RESOLVED]
by thanos1983 (Parson) on Feb 10, 2017 at 11:50 UTC | |
by Marshall (Canon) on Feb 10, 2017 at 19:15 UTC |