The floating-point number pattern matches a string of numeric characters that may or may not be preceded by a minus sign, and that may or may not include a decimal point followed by other numbers. Any non-numeric character except for a period or a dash (minus sign) is not valid for floating-point matches.
For example, this script matches each number and the corresponding end-of-line. Only the value of float is assigned to the variable so there are no extra lines between the lines of output.
ASL Script (float_matches.asl): START { a:float eol } do { print("Matched with ".a); } DEFAULT { ..eol } do { print("Failed match"); } Input (float_match.txt): 173 -3.95 3453.45 Output: $ sm_adapter --file=float_match.txt float_match.asl Matched with 173 Matched with -3.95 Matched with 3453.45 $