|
What this is
Other links
The source codepackage com.ice.syslogd; import com.oroinc.text.regex.*; public class SyslogMatch { public static final String RCS_ID = "$Id: SyslogMatch.java,v 1.1.1.1 1998/02/22 05:47:54 time Exp $"; public static final String RCS_REV = "$Revision: 1.1.1.1 $"; public static final String RCS_NAME = "$Name: $"; private boolean match; private String expression; private Pattern pattern; private MatchResult result; public SyslogMatch() { this.match = false; this.pattern = null; } public void compile( String expr ) throws MatchCompileException { Perl5Compiler compiler = new Perl5Compiler(); this.expression = expr; try { this.pattern = compiler.compile( expr ); } catch( MalformedPatternException ex ) { this.pattern = null; throw new MatchCompileException( ex.getMessage() ); } } public boolean matchMessage( String message ) { if ( this.pattern == null ) { this.match = false; return false; } MatchResult result = null; Perl5Matcher matcher = new Perl5Matcher(); PatternMatcherInput input = new PatternMatcherInput( message ); this.match = matcher.contains( input, this.pattern ); if ( this.match ) { this.result = matcher.getMatch(); } return this.match; } public String getExpression() { return this.expression; } public boolean didMatch() { return this.match; } public String getMatchSubExpr( int index ) { return this.result.group( index ); } public String[] getMatchVariables() { int size = result.groups(); String[] vars = new String[ size ]; for( int i = 0 ; i < size ; i++ ) { vars[ i ] = this.result.group( i ); } return vars; } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.