X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=miniexpect.pod;h=b4f0edc3ec82772100934c4c1c3cc2bbb27924cf;hb=d911800d008faef4d35b6a55adcc2d5f8064cfc1;hp=66ba8c26367629bac9ce93ea3a4f72b00b28f0af;hpb=329575032af72a3155bcc2640231e603604cd253;p=miniexpect.git diff --git a/miniexpect.pod b/miniexpect.pod index 66ba8c2..b4f0edc 100644 --- a/miniexpect.pod +++ b/miniexpect.pod @@ -257,6 +257,29 @@ for EOF or timeout. C, C, C, C and C are passed through to the L function. +=item * + +If multiple regular expressions are passed, then they are checked in +turn and the I regular expression that matches is returned +I. + +For example if the input is C<"hello world"> and you pass the two +regular expressions: + + regexps[0].re = world + regexps[1].re = hello + +then the first regular expression (C<"world">) may match and the +C<"hello"> part of the input may be ignored. + +In some cases this can even lead to unpredictable matching. In the +case above, if we only happened to read C<"hello wor">, then the +second regular expression (C<"hello">) I match. + +If this is a concern, combine your regular expressions into a single +one, eg. C<(hello)|(world)>. + =back =head2 mexp_expect example