register output from shell command, match line to supplied value and return value of different column

merely looking for some suggestions how to perform the following actions in ansible

  1. run a shell command (ok this one is easy), it will return a list of values in the format of:

A B C D
D E F G

  1. now i want to match a line with a value and return the value of a DIFFERENT column… so using the above, i want to match F but return the value of column 1 (in the example this would be “D”) as a variable that i can use further in the playbook.
    (matching the search value is easy to get a true or false however i am perplexed how to do this the ansible way)

In pure linux i could hack this with a grep of “F” and awk out the column i want, but trying to not do everything with the shell module if i dont need to.

Any suggestions welcome.

Thanks

Parsing string/text in Ansible is not trivial as you would need a lot more code to do it.
Since you already running shell piping it through awk '{if ($3 == "F") print $1}' is a lot easier.