while () { s{(\d)\s+(\d)}{log(($1 * $2) || (1/2)) / log(2)}eg; print "New line: $_"; } __DATA__ 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 2 0 1 0 1 0 1 0 1 1 1 2 2 0 2 0 2 0 2 0 2 1 2 1 1 1 0 1 0 1 0 1 0 1 2 1 2 1 1 1 1 1 1 1 1 1 2 2 2 1 2 1 2 1 2 1 2 2 2 1 1 2 0 2 0 2 0 2 0 2 2 1 2 2 1 2 1 2 1 2 1 2 2 2 2 2 2 2 2 2 2 2 2