But it's rather of painful to look at. What alternatives exist? I suspect there is a way to only specify each match once, and not use '|', but...If it makes any difference, this is running on ActiveState 5.6.0 (build 616)$value =~ /^(?:(?:(\d+)d)?\s*(?:(\d+)h){1})|(?:(?:(\d+)d){1}\s*(?:(\d+)h)?)$/i; my $day = $1 || $3 || 0; my $hour = $2 || $4 || 0;
In reply to Help with a more precise regex by LogicalChaos
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |