#!/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; 27:3:7; 27:3:8; +27:3:9; 65:1:4; 65:1:18'; print "$_\n"; s/\b(\d+:\d+:)(\d+)\K(; \1((??{$+ + 1}))\b)+/-$+/g; print "$_\n";
Outputs:
43:1:1; 43:1:2; 43:1:3; 43:1:4; 43:1:5; 43:1:6; 27:3:7; 27:3:8; 27:3:9 +; 65:1:4; 65:1:18 43:1:1-6; 27:3:7-9; 65:1:4; 65:1:18
In reply to Re: Regexp substitution on variable-length ranges with embedded code?
by tybalt89
in thread Regexp substitution on variable-length ranges with embedded code?
by Polyglot
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |