?? syslogmatch.java
字號:
package com.ice.syslogd;import com.oroinc.text.regex.*;public classSyslogMatch { public static final String RCS_ID = "$Id: SyslogMatch.java,v 1.2 1998/07/29 02:15:10 time Exp $"; public static final String RCS_REV = "$Revision: 1.2 $"; 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; } }
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -