Java Code Examples for org.apache.oro.text.regex.PatternMatcher#matches()
The following examples show how to use
org.apache.oro.text.regex.PatternMatcher#matches() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: RegularMatch.java From anyline with Apache License 2.0 | 6 votes |
/** * 提取子串 * @param src 输入字符串 src 输入字符串 * @param regx 表达式 regx 表达式 * @return return */ public List<List<String>> fetchs(String src, String regx){ List<List<String>> list = new ArrayList<List<String>>(); try{ Pattern pattern = patternCompiler.compile(regx, Perl5Compiler.DEFAULT_MASK); PatternMatcher matcher = new Perl5Matcher(); PatternMatcherInput input = new PatternMatcherInput(src); while(matcher.matches(input, pattern)){ MatchResult matchResult = matcher.getMatch(); int groups = matchResult.groups(); List<String> item = new ArrayList<String>(); for(int i=0; i<=groups; i++){ item.add(matchResult.group(i)); } list.add(item); } }catch(Exception e){ if(ConfigTable.isDebug() && log.isWarnEnabled()){ e.printStackTrace(); } } return list; }
Example 2
Source File: RegularMatch.java From anyline with Apache License 2.0 | 6 votes |
/** * 提取子串 * @param src 输入字符串 src 输入字符串 * @param regx 表达式 regx 表达式 * @param idx 指定提取位置 idx 指定提取位置 * @return return */ public List<String> fetch(String src, String regx, int idx){ List<String> list = new ArrayList<String>(); try{ Pattern pattern = patternCompiler.compile(regx, Perl5Compiler.DEFAULT_MASK); PatternMatcher matcher = new Perl5Matcher(); PatternMatcherInput input = new PatternMatcherInput(src); while(matcher.matches(input, pattern)){ MatchResult matchResult = matcher.getMatch(); list.add(matchResult.group(idx)); } }catch(Exception e){ if(ConfigTable.isDebug() && log.isWarnEnabled()){ e.printStackTrace(); } } return list; }
Example 3
Source File: Regexp.java From scipio-erp with Apache License 2.0 | 6 votes |
@Override public void exec(Map<String, Object> inMap, Map<String, Object> results, List<Object> messages, Locale locale, ClassLoader loader) { Object obj = inMap.get(fieldName); String fieldValue = null; try { fieldValue = (String) ObjectType.simpleTypeConvert(obj, "String", null, locale); } catch (GeneralException e) { messages.add("Could not convert field value for comparison: " + e.getMessage()); return; } if (pattern == null) { messages.add("Could not compile regular expression \"" + expr + "\" for validation"); return; } PatternMatcher matcher = new Perl5Matcher(); if (!matcher.matches(fieldValue, pattern)) { addMessage(messages, loader, locale); } }
Example 4
Source File: RegularMatch.java From anyline with Apache License 2.0 | 5 votes |
/** * 匹配状态 * @param src src * @param regx regx * @return return */ public boolean match(String src, String regx){ boolean result = false; try{ Pattern pattern = patternCompiler.compile(regx, Perl5Compiler.DEFAULT_MASK); PatternMatcher matcher = new Perl5Matcher(); result = matcher.matches(src, pattern); }catch(Exception e){ result = false; log.error("[match error][src:{}][regx:{}]", src, regx); e.printStackTrace(); } return result; }
Example 5
Source File: EntityComparisonOperator.java From scipio-erp with Apache License 2.0 | 5 votes |
public static final <L,R> boolean compareLike(L lhs, R rhs) { PatternMatcher matcher = new Perl5Matcher(); if (lhs == null) { if (rhs != null) { return false; } } else if (lhs instanceof String && rhs instanceof String) { //see if the lhs value is like the rhs value, rhs will have the pattern characters in it... return matcher.matches((String) lhs, makeOroPattern((String) rhs)); } return true; }
Example 6
Source File: string.java From openbd-core with GNU General Public License v3.0 | 5 votes |
public static boolean regexMatches(String str, String re) throws MalformedPatternException { PatternMatcher matcher = new Perl5Matcher(); PatternCompiler compiler = new Perl5Compiler(); PatternMatcherInput input = new PatternMatcherInput(str); Pattern pattern = compiler.compile(re, Perl5Compiler.SINGLELINE_MASK); return matcher.matches(input, pattern); }
Example 7
Source File: Perl5RegExpMatching.java From j2ssh-maverick with GNU Lesser General Public License v3.0 | 5 votes |
/** * compiles fileNameRegExp into a regular expression and pattern matches on * each file's name, and returns those that match. * * @param files * @param fileNameRegExp * * @return String[] of file names that match the expresion. */ public String[] matchFileNamesWithPattern(File[] files, String fileNameRegExp) throws SshException { // set up variables for regexp matching Pattern mpattern = null; PatternCompiler aPCompiler = new Perl5Compiler(); PatternMatcher aPerl5Matcher = new Perl5Matcher(); // Attempt to compile the pattern. If the pattern is not valid, // throw exception try { mpattern = aPCompiler.compile(fileNameRegExp); } catch (MalformedPatternException e) { throw new SshException("Invalid regular expression:" + e.getMessage(), SshException.BAD_API_USAGE); } Vector<String> matchedNames = new Vector<String>(); for (int i = 0; i < files.length; i++) { if ((!files[i].getName().equals(".")) && (!files[i].getName().equals("..")) && (!files[i].isDirectory())) { if (aPerl5Matcher.matches(files[i].getName(), mpattern)) { // call get for each match, passing true, so that it doesnt // repeat the search matchedNames.addElement(files[i].getName()); } } } // return (String[]) matchedNames.toArray(new String[0]); String[] matchedNamesStrings = new String[matchedNames.size()]; matchedNames.copyInto(matchedNamesStrings); return matchedNamesStrings; }
Example 8
Source File: Perl5RegExpMatching.java From j2ssh-maverick with GNU Lesser General Public License v3.0 | 5 votes |
/** * compiles fileNameRegExp into a regular expression and pattern matches on * each file's name, and returns those that match. * * @param files * @param fileNameRegExp * * @return SftpFile[] of files that match the expresion. */ public SftpFile[] matchFilesWithPattern(SftpFile[] files, String fileNameRegExp) throws SftpStatusException, SshException { // set up variables for regexp matching Pattern mpattern = null; PatternCompiler aPCompiler = new Perl5Compiler(); PatternMatcher aPerl5Matcher = new Perl5Matcher(); // Attempt to compile the pattern. If the pattern is not valid, // throw exception try { mpattern = aPCompiler.compile(fileNameRegExp); } catch (MalformedPatternException e) { throw new SshException("Invalid regular expression:" + e.getMessage(), SshException.BAD_API_USAGE); } Vector<SftpFile> matchedNames = new Vector<SftpFile>(); for (int i = 0; i < files.length; i++) { if ((!files[i].getFilename().equals(".")) && (!files[i].getFilename().equals("..")) && (!files[i].isDirectory())) { if (aPerl5Matcher.matches(files[i].getFilename(), mpattern)) { // call get for each match, passing true, so that it doesnt // repeat the search matchedNames.addElement(files[i]); } } } // return (SftpFile[]) matchedNames.toArray(new SftpFile[0]); SftpFile[] matchedNamesSftpFiles = new SftpFile[matchedNames.size()]; matchedNames.copyInto(matchedNamesSftpFiles); return matchedNamesSftpFiles; }
Example 9
Source File: GlobRegExpMatching.java From j2ssh-maverick with GNU Lesser General Public License v3.0 | 5 votes |
/** * compiles fileNameRegExp into a regular expression and pattern matches on * each file's name, and returns those that match. * * @param files * @param fileNameRegExp * * @return String[] of files that match the expresion. */ public String[] matchFileNamesWithPattern(File[] files, String fileNameRegExp) throws SshException { // set up variables for regexp matching Pattern mpattern = null; PatternCompiler aGCompiler = new GlobCompiler(); PatternMatcher aPerl5Matcher = new Perl5Matcher(); // Attempt to compile the pattern. If the pattern is not valid, // throw exception try { mpattern = aGCompiler.compile(fileNameRegExp); } catch (MalformedPatternException e) { throw new SshException("Invalid regular expression:" + e.getMessage(), SshException.BAD_API_USAGE); } Vector<String> matchedNames = new Vector<String>(); for (int i = 0; i < files.length; i++) { if ((!files[i].getName().equals(".")) && (!files[i].getName().equals(".."))) { if (aPerl5Matcher.matches(files[i].getName(), mpattern)) { // call get for each match, passing true, so that it doesnt // repeat the search matchedNames.addElement(files[i].getAbsolutePath()); } } } // return (String[]) matchedNames.toArray(new String[0]); String[] matchedNamesStrings = new String[matchedNames.size()]; matchedNames.copyInto(matchedNamesStrings); return matchedNamesStrings; }
Example 10
Source File: GlobRegExpMatching.java From j2ssh-maverick with GNU Lesser General Public License v3.0 | 5 votes |
/** * compiles fileNameRegExp into a regular expression and pattern matches on * each file's name, and returns those that match. * * @param files * @param fileNameRegExp * * @return SftpFile[] of files that match the expresion. */ public SftpFile[] matchFilesWithPattern(SftpFile[] files, String fileNameRegExp) throws SftpStatusException, SshException { // set up variables for regexp matching Pattern mpattern = null; PatternCompiler aGCompiler = new GlobCompiler(); PatternMatcher aPerl5Matcher = new Perl5Matcher(); // Attempt to compile the pattern. If the pattern is not valid, // throw exception try { mpattern = aGCompiler.compile(fileNameRegExp); } catch (MalformedPatternException e) { throw new SshException("Invalid regular expression:" + e.getMessage(), SshException.BAD_API_USAGE); } Vector<SftpFile> matchedNames = new Vector<SftpFile>(); for (int i = 0; i < files.length; i++) { if ((!files[i].getFilename().equals(".")) && (!files[i].getFilename().equals("..")) && (!files[i].isDirectory())) { if (aPerl5Matcher.matches(files[i].getFilename(), mpattern)) { // call get for each match, passing true, so that it doesnt // repeat the search matchedNames.addElement(files[i]); } } } // return (SftpFile[]) matchedNames.toArray(new SftpFile[0]); SftpFile[] matchedNamesSftpFiles = new SftpFile[matchedNames.size()]; matchedNames.copyInto(matchedNamesSftpFiles); return matchedNamesSftpFiles; }