[rt-users] Regex in scrip won't match multi-line strings

Matt Zagrabelny mzagrabe at d.umn.edu
Mon Feb 27 10:57:52 EST 2017


On Mon, Feb 27, 2017 at 9:48 AM, Peter Nikolaidis <petern at paradigmcc.com> wrote:
> Hi all,
>
> I'm trying to automatically resolve tickets that don't require any action.
> In this example, I receive a backup notification. I know it's a backup
> script result email based on the subject, and I know the backup was
> successful (and therefore I can auto-resolve the ticket) if another regex
> matches the body. When I match against the subject line alone, it works.
> However, when I try to match against the mutli-line body, it never matches
> (even though when I run the regex against the string in a test, it matches
> as expected).
>
> Are multi-line matches not an option, or do I need to test in another way?

From:

http://perldoc.perl.org/perlre.html

"""
Modifier m

Treat the string as multiple lines. That is, change "^" and "$" from
matching the start of the string's first line and the end of its last
line to matching the start and end of each line within the string.
"""
I almost always use /xms for my REs. This allows for significant
readability - at the cost of significant number of lines. Check out
Damian Conway's "Perl Best Practices" Regular Expression chapter.

-m



More information about the rt-users mailing list