|
Terry,
Your results are exactly what I would've expected. You didn't explain
what you are trying to accomplish, or why these aren't the results you
wanted, or what results you _do_ want, so I'm not sure how to help you
further.
Terrence Enger wrote:
I have not seen this arrive from the list. I beg your pardon if it
appears twice.
-------- Forwarded Message --------
From: Terrence Enger <tenger@xxxxxxxxxxxxxxxx>
Reply-To: tenger@xxxxxxxxxxxxxxxx
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxx>
Subject: regular expressions, I am puzzled
Date: Thu, 30 Jul 2009 14:35:37 -0400
Greetings,
There has been a bit of discussion about regular expressions on
c400-l, but I am bringing my question here because I do not know
that my question has anything to do with the programming
language. On the other hand, the regular expression APIs are
documented in SC41-5607-03 "ILE C/C++ Runtime Library Functions",
and I transcribed some stuff from QSYSINC/H(REGEX); so ya takes
yur chances. For what it's worth, I am using V5R2, ILE RPG, and
extended regular expressions.
My regular expression exerciser is giving results which
contradict both my preconceptions and the web-based exercisers
which I have tried. First, a test giving the results I expect.
Reported from and to numbers are rm_so and rm_eo within the array
of regmatch_t returned from regexec().
Previous result 0 1 2 3 4
0....+....0....+....0....+....0....+....0....+....
Input string . . . : nuttin
Regular expression : (n)(u)(t*)(i)
Matches . . . . . .: Sub# Details Starting
---- --------------------- --------
0 from 0 to 5, length 5 nutti
1 from 0 to 1, length 1 n
2 from 1 to 2, length 1 u
3 from 2 to 4, length 2 tt
4 from 4 to 5, length 1 i
But when I add an extra set of parentheses, the offsets of
subexpressions in that added subexpression sometimes are somewhat
reduced.
Previous result 0 1 2 3 4
0....+....0....+....0....+....0....+....0....+....
Input string . . . : nuttin
Regular expression : (n)(u)((t*)(i))
Matches . . . . . .: Sub# Details Starting
---- --------------------- --------
0 from 0 to 5, length 5 nutti
1 from 0 to 1, length 1 n
2 from 1 to 2, length 1 u
3 from 2 to 5, length 3 tti
4 from 1 to 3, length 2 ut
5 from 3 to 4, length 1 t
Within the section on extended regular expressions in "The Single
UNIX (R) Specification, Version 2, Regular Expressions"
<http://www.opengroup.org/onlinepubs/007908799/xbd/re.html>, I
have looked at each cause of undefined behaviour, and I don't see
that any of them applies to what I am doing.
Do these results make any sense? Or, are there any ideas about
what I could be doing wrong? Should anybody care, perchance, I
can provide the source for my exerciser program.
Thank you, for your attention.
Cheers,
Terry.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.