Under the ERE implementation in RELENG_8, I'm having trouble figuring out how to group and backreference this.
Given a line, where: If AAA is present, CCC will be too, and B may appear in between. If AAA is not present, neither CCC or B will be present. DDDD is always present. Junk may be present. Match good lines and ouput in chunks. echo junkAAAABCCCDDDDjunk | \ This works as expected: sed -E -n 's,^.*(AAAB?CCC)(DDDD).*$,1 \1 2 \2,p' 1 AAABCCC 2 DDDD But making the leading bits optional per spec does not work: sed -E -n 's,^.*(AAAB?CCC)?(DDDD).*$,1 \1 2 \2,p' 1 2 DDDD Nor does adding the usual grouping parens: sed -E -n 's,^.*((AAAB?CCC)?)(DDDD).*$,1 \1 2 \2,p' 1 2 How do I group off the leading bits? Or is this a limitation of ERE's? Or a bug? Thanks. _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "freebsd-questions-unsubscr...@freebsd.org"