Thread Regex mit optionaler Gruppe
(3 answers)
Opened by pinwheel at 2015-07-13 17:14
Wie wärs mit
^(\d{9}):(?:.*?(H\d{9})|) Also eine Oder-Gruppe an zweiter Stelle, von der der erste Teil die Zahl mit H enthält, also zuerst gematcht werden wird, der zweite Teil ist einfach leer, sodass $2 undef ist, wenn es keine Zahl mit H gibt. Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 use strict; my $re = qr/^(\d{9}):(?:.*?(H\d{9})|)/; while(<DATA>) { if (/$re/) { print "\$1 = $1; \$2 = $2\n"; } } __DATA__ 410304100: 410304100 410304101 410304100: H410304100 410304101 410304100: 410304100 H410304101 Ergibt: Quote |