This is a followup of my previous question "Sed to print only first pattern match of the line"
The data I'm working on
... "one" ... "two" ... "three" ...
one to be printed and the answer I accepted was this
I searched and tried to understand this regular expression but I couldn't wrap my head around this one.
What I understand is:
[^"]means do not match
*means match 0 any number of characters preceded by
\)means store anything matching in between them to be referenced later by the corresponding number i.e in our case it is only
.*is greedy and means any number of characters
I don't understand what
[^"]* here means.
How do I verbally read this whole regular expression so that I understand what's going on here