#!/usr/bin/perl -w use YAPE::Regex::Explain; use strict; if (@ARGV and $ARGV[0] eq '-h') { die << "USAGE"; usage: explain [ismx] < regex ismx the regex modifiers in effect regex the regex, either on standard input, or as the second arg USAGE } my $mode = shift || ''; my $regex; my $exp; { local $/; chop($regex = <>) } $exp = YAPE::Regex::Explain->new(eval "qr/\$regex/$mode"); $exp->parse or $exp->error and die "explain error: " . $exp->error . "\n"; print $exp->explain;