Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re^3: Regexp substitution on variable-length ranges with embedded code?

by tybalt89 (Prior)
on May 26, 2021 at 21:25 UTC ( #11133091=note: print w/replies, xml ) Need Help??


in reply to Re^2: Regexp substitution on variable-length ranges with embedded code?
in thread Regexp substitution on variable-length ranges with embedded code?

Simple with a second line. You don't really need it in one line, do you?

#!/usr/bin/perl use strict; # https://perlmonks.org/?node_id=11133054 use warnings; $_ = '43:1:1; 43:1:2; 43:1:3; 43:1:4; 43:1:5; 43:1:6; 43:1:9; 43:1:10; + 27:3:2; 27:3:7; 27:3:8; 27:3:9; 65:1:4; 65:1:18; 65:1:28'; print "$_\n"; s/\b(\d+:\d+:)(\d+)\K(; \1((??{$+ + 1}))\b)+/-$+/g; 1 while s/\b(\d+:\d+:)[\d,-]+\K; \1([\d,-]+)/,$2/; print "$_\n";

Outputs:

43:1:1; 43:1:2; 43:1:3; 43:1:4; 43:1:5; 43:1:6; 43:1:9; 43:1:10; 27:3: +2; 27:3:7; 27:3:8; 27:3:9; 65:1:4; 65:1:18; 65:1:28 43:1:1-6,9-10; 27:3:2,7-9; 65:1:4,18,28

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (5)
As of 2022-05-26 15:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Do you prefer to work remotely?



    Results (93 votes). Check out past polls.

    Notices?