function Lutz() >> >> local s >> text to s noshow flags 1 pretext 7 >> some text >> >>>You guy >> line 1 >> line 2 >> ... >> line nnn >> endtext >> >> local regexObj, pattern >> regexObj = createobject('VBScript.RegExp') >> regexObj.IgnoreCase = .f. >> regexObj.Multiline = .f. >> regexObj.Global = .f. >> >> pattern = '^(\x0d\x0a|.)*\x0d\x0a>>>You.*\x0d\x0a((\x0d\x0a|.)*)$' >> regexObj.pattern = m.pattern >> >> >> local matches >> matches = m.regexObj.Execute(m.s) >> >> do case >> case !inlist(m.matches.Count, 1) >> ? 'fail' >> otherwise >> ?matches.item[0].Submatches(1) >> >> endcase >>endfunc >>>
pattern = '^(.*\x0d\x0a)*>>>You.*\x0d\x0a((\x0d\x0a|.)*)$'> Why do I need the first submatch?