local $,="\t"; while () { /Windows\s(\w+)\W+Version\s((?:\d+\.?)+)/ && print $1,$2,"\n"; } #Outputs # 98 4.10.1998 # 2000 5.00.2195 # 95 4.00.1111 # NT 3.51 # NT 4.0 __DATA__ Windows 98 [Version 4.10.1998] Microsoft Windows 2000 [Version 5.00.2195] Microsoft Windows 95. [Version 4.00.1111] Windows NT Version 3.51 Windows NT Version 4.0