#!/usr/bin/env perl
use strict;
use warnings;
while (<DATA>) {
# A1 => An integer between 1 and 99, without leading zeros.
# (Although zero can appear by itself.)
#
# A2 => A optional fractional component that may contain no more
# than two digits.
#
# -OR-
#
# B1 => The integer 100.
#
# B2 => A optional fractional component following that may
# consist of one or two zeros only.
#
if (/^(?:(?:[0-9]|[1-9]{1,2})(?:,[0-9]{1,2})?|(?:100)(?:,0{1,2})?)$/) {
# ^^^^^^^^A1^^^^^^ ^^^^^A2^^^^ ^B1 ^^^B2^^
} else {
}
}
__DATA__
0
01
11
99
100
101
0,0
0,00
01,00
0,000
99,00
99,99
100,0
100,00
100,000
100,01
100,99
101,00
IyEvdXNyL2Jpbi9lbnYgcGVybAoKdXNlIHN0cmljdDsKdXNlIHdhcm5pbmdzOwoKd2hpbGUgKDxEQVRBPikgewogICAgY2hvbXA7CgogICAgIyBBMSA9PiBBbiBpbnRlZ2VyIGJldHdlZW4gMSBhbmQgOTksIHdpdGhvdXQgbGVhZGluZyB6ZXJvcy4KICAgICMgICAgICAoQWx0aG91Z2ggemVybyBjYW4gYXBwZWFyIGJ5IGl0c2VsZi4pCiAgICAjCiAgICAjIEEyID0+IEEgb3B0aW9uYWwgZnJhY3Rpb25hbCBjb21wb25lbnQgdGhhdCBtYXkgY29udGFpbiBubyBtb3JlCiAgICAjICAgICAgIHRoYW4gdHdvIGRpZ2l0cy4KICAgICMKICAgICMgLU9SLQogICAgIwogICAgIyBCMSA9PiBUaGUgaW50ZWdlciAxMDAuCiAgICAjCiAgICAjIEIyID0+IEEgb3B0aW9uYWwgZnJhY3Rpb25hbCBjb21wb25lbnQgZm9sbG93aW5nIHRoYXQgbWF5CiAgICAjICAgICAgIGNvbnNpc3Qgb2Ygb25lIG9yIHR3byB6ZXJvcyBvbmx5LgogICAgIwoKICAgIGlmICgvXig/Oig/OlswLTldfFsxLTldezEsMn0pKD86LFswLTldezEsMn0pP3woPzoxMDApKD86LDB7MSwyfSk/KSQvKSB7CiAgICAjICAgICAgICAgICBeXl5eXl5eXkExXl5eXl5eICAgIF5eXl5eQTJeXl5eICAgICAgXkIxICAgIF5eXkIyXl4KCiAgICAgICAgcHJpbnQgIiogWyRfXVxuIjsKICAgIH0gZWxzZSB7CiAgICAgICAgcHJpbnQgIiAgWyRfXVxuIjsKICAgIH0KfQoKX19EQVRBX18KMAowMQoxMQo5OQoxMDAKMTAxCjAsMAowLDAwCjAxLDAwCjAsMDAwCjk5LDAwCjk5LDk5CjEwMCwwCjEwMCwwMAoxMDAsMDAwCjEwMCwwMQoxMDAsOTkKMTAxLDAwCg==
* [0]
[01]
* [11]
* [99]
* [100]
[101]
* [0,0]
* [0,00]
[01,00]
[0,000]
* [99,00]
* [99,99]
* [100,0]
* [100,00]
[100,000]
[100,01]
[100,99]
[101,00]