當前位置: 首頁>>代碼示例>>Java>>正文


Java MalformedPatternException類代碼示例

本文整理匯總了Java中org.apache.oro.text.regex.MalformedPatternException的典型用法代碼示例。如果您正苦於以下問題:Java MalformedPatternException類的具體用法?Java MalformedPatternException怎麽用?Java MalformedPatternException使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


MalformedPatternException類屬於org.apache.oro.text.regex包,在下文中一共展示了MalformedPatternException類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: SSHShell

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * Creates SSHShell.
 *
 * @param host the host name
 * @param port the ssh port
 * @param userName the ssh user name
 * @param sshPrivateKey the ssh password
 * @return the shell
 * @throws JSchException
 * @throws IOException
 */
private SSHShell(String host, int port, String userName, byte[] sshPrivateKey)
    throws JSchException, IOException {
    Closure expectClosure = getExpectClosure();
    for (String linuxPromptPattern : new String[]{"\\>", "#", "~#", "~\\$"}) {
        try {
            Match match = new RegExpMatch(linuxPromptPattern, expectClosure);
            linuxPromptMatches.add(match);
        } catch (MalformedPatternException malformedEx) {
            throw new RuntimeException(malformedEx);
        }
    }
    JSch jsch = new JSch();
    jsch.setKnownHosts(System.getProperty("user.home") + "/.ssh/known_hosts");
    jsch.addIdentity(host, sshPrivateKey, (byte[]) null, (byte[]) null);
    this.session = jsch.getSession(userName, host, port);
    this.session.setConfig("StrictHostKeyChecking", "no");
    this.session.setConfig("PreferredAuthentications", "publickey,keyboard-interactive,password");
    session.connect(60000);
    this.channel = (ChannelShell) session.openChannel("shell");
    this.expect = new Expect4j(channel.getInputStream(), channel.getOutputStream());
    channel.connect();
}
 
開發者ID:Azure-Samples,項目名稱:acr-java-manage-azure-container-registry,代碼行數:34,代碼來源:SSHShell.java

示例2: SshShell

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * Creates SSHShell.
 *
 * @param host the host name
 * @param port the ssh port
 * @param userName the ssh user name
 * @param password the ssh password
 * @return the shell
 * @throws JSchException
 * @throws IOException
 */
private SshShell(String host, int port, String userName, String password)
        throws JSchException, IOException {
    Closure expectClosure = getExpectClosure();
    for (String linuxPromptPattern : new String[]{"\\>","#", "~#", "~\\$"}) {
        try {
            Match match = new RegExpMatch(linuxPromptPattern, expectClosure);
            linuxPromptMatches.add(match);
        } catch (MalformedPatternException malformedEx) {
            throw new RuntimeException(malformedEx);
        }
    }
    JSch jsch = new JSch();
    this.session = jsch.getSession(userName, host, port);
    session.setPassword(password);
    Hashtable<String,String> config = new Hashtable<>();
    config.put("StrictHostKeyChecking", "no");
    session.setConfig(config);
    session.connect(60000);
    this.channel = (ChannelShell) session.openChannel("shell");
    this.expect = new Expect4j(channel.getInputStream(), channel.getOutputStream());
    channel.connect();
}
 
開發者ID:Azure,項目名稱:azure-libraries-for-java,代碼行數:34,代碼來源:SshShell.java

示例3: SSHShell

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * Creates SSHShell.
 *
 * @param host the host name
 * @param port the ssh port
 * @param userName the ssh user name
 * @param password the ssh password
 * @return the shell
 * @throws JSchException
 * @throws IOException
 */
private SSHShell(String host, int port, String userName, String password)
        throws JSchException, IOException {
    Closure expectClosure = getExpectClosure();
    for (String linuxPromptPattern : new String[]{"\\>", "#", "~#", "~\\$"}) {
        try {
            Match match = new RegExpMatch(linuxPromptPattern, expectClosure);
            linuxPromptMatches.add(match);
        } catch (MalformedPatternException malformedEx) {
            throw new RuntimeException(malformedEx);
        }
    }
    JSch jsch = new JSch();
    this.session = jsch.getSession(userName, host, port);
    session.setPassword(password);
    Hashtable<String, String> config = new Hashtable<>();
    config.put("StrictHostKeyChecking", "no");
    session.setConfig(config);
    session.connect(60000);
    this.channel = (ChannelShell) session.openChannel("shell");
    this.expect = new Expect4j(channel.getInputStream(), channel.getOutputStream());
    channel.connect();
}
 
開發者ID:Azure,項目名稱:azure-libraries-for-java,代碼行數:34,代碼來源:SSHShell.java

示例4: convertStringToPattern

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * 把字符串轉成Pattern和UrlType
 * 
 * @param perl5RegExp
 * @return
 */
private URLPatternHolder convertStringToPattern(String line) {
    URLPatternHolder holder = new URLPatternHolder();
    Pattern compiledPattern;
    Perl5Compiler compiler = new Perl5Compiler();
    String perl5RegExp = line;
    try {
        compiledPattern = compiler.compile(perl5RegExp, Perl5Compiler.READ_ONLY_MASK);
        holder.setCompiledPattern(compiledPattern);
    } catch (MalformedPatternException mpe) {
        throw new IllegalArgumentException("Malformed regular expression: " + perl5RegExp);
    }

    if (logger.isDebugEnabled()) {
        logger.debug("Added regular expression: " + compiledPattern.getPattern().toString());
    }
    return holder;
}
 
開發者ID:luoyaogui,項目名稱:otter-G,代碼行數:24,代碼來源:URLProtectedEditor.java

示例5: makeOroPattern

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
public static Pattern makeOroPattern(String sqlLike) {
    Perl5Util perl5Util = new Perl5Util();
    try {
        sqlLike = perl5Util.substitute("s/([$^.+*?])/\\\\$1/g", sqlLike);
        sqlLike = perl5Util.substitute("s/%/.*/g", sqlLike);
        sqlLike = perl5Util.substitute("s/_/./g", sqlLike);
    } catch (Throwable t) {
        String errMsg = "Error in ORO pattern substitution for SQL like clause [" + sqlLike + "]: " + t.toString();
        Debug.logError(t, errMsg, module);
        throw new IllegalArgumentException(errMsg);
    }
    try {
        return PatternFactory.createOrGetPerl5CompiledPattern(sqlLike, true);
    } catch (MalformedPatternException e) {
        Debug.logError(e, module);
    }
    return null;
}
 
開發者ID:ilscipio,項目名稱:scipio-erp,代碼行數:19,代碼來源:EntityComparisonOperator.java

示例6: createOrGetPerl5CompiledPattern

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * Compiles and caches a Perl5 regexp pattern for the given string pattern.
 * This would be of no benefits (and may bloat memory usage) if stringPattern is never the same.
 * @param stringPattern a Perl5 pattern string
 * @param caseSensitive case sensitive true/false
 * @return a <code>Pattern</code> instance for the given string pattern
 * @throws MalformedPatternException
 */

public static Pattern createOrGetPerl5CompiledPattern(String stringPattern, boolean caseSensitive) throws MalformedPatternException {
    Pattern pattern = compiledPerl5Patterns.get(stringPattern);
    if (pattern == null) {
        Perl5Compiler compiler = new Perl5Compiler();
        if (caseSensitive) {
            pattern = compiler.compile(stringPattern, Perl5Compiler.READ_ONLY_MASK); // READ_ONLY_MASK guarantees immutability
        } else {
            pattern = compiler.compile(stringPattern, Perl5Compiler.CASE_INSENSITIVE_MASK | Perl5Compiler.READ_ONLY_MASK);
        }
        pattern = compiledPerl5Patterns.putIfAbsentAndGet(stringPattern, pattern);
        if (Debug.verboseOn()) {
            Debug.logVerbose("Compiled and cached the pattern: '" + stringPattern, module);
        }
    }
    return pattern;
}
 
開發者ID:ilscipio,項目名稱:scipio-erp,代碼行數:26,代碼來源:PatternFactory.java

示例7: WildCardFilter

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * @param wildcard
 * @throws MalformedPatternException
 */
public WildCardFilter(String wildcard,boolean ignoreCase) throws MalformedPatternException {
    this.wildcard=wildcard;
    this.ignoreCase=ignoreCase;
    StringBuffer sb = new StringBuffer(wildcard.length());
    int len=wildcard.length();
    
    for(int i=0;i<len;i++) {
        char c = wildcard.charAt(i);
        if(c == '*')sb.append(".*");
        else if(c == '?') sb.append('.');
        else if(specials.indexOf(c)!=-1)sb.append('\\').append(c);
        else sb.append(c);
    }
    pattern=new Perl5Compiler().compile(ignoreCase?sb.toString().toLowerCase():sb.toString());
}
 
開發者ID:lucee,項目名稱:extension-mongodb,代碼行數:20,代碼來源:WildCardFilter.java

示例8: getTaskPattern

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
@Nullable
private Pattern getTaskPattern(String pattern) {
  if (!Comparing.strEqual(pattern, myPattern)) {
    myCompiledPattern = null;
    myPattern = pattern;
  }
  if (myCompiledPattern == null) {
    final String regex = "^.*" + NameUtil.buildRegexp(pattern, 0, true, true);

    final Perl5Compiler compiler = new Perl5Compiler();
    try {
      myCompiledPattern = compiler.compile(regex);
    }
    catch (MalformedPatternException ignored) {
    }
  }
  return myCompiledPattern;
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:19,代碼來源:ListChooseByNameModel.java

示例9: create

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
@Override
public Regex create(String pattern) {
    org.apache.oro.text.regex.Perl5Compiler perl5Compiler = new org.apache.oro.text.regex.Perl5Compiler();
    org.apache.oro.text.regex.Perl5Matcher perl5Matcher = new org.apache.oro.text.regex.Perl5Matcher();
    org.apache.oro.text.regex.Pattern regexpr;
    try {
        regexpr = perl5Compiler.compile(pattern);
    } catch (MalformedPatternException e) {
        throw new IllegalArgumentException(e);
    }
    
    return new Regex() {
        @Override
        public boolean containsMatch(String string) {
            return perl5Matcher.matches(string, regexpr);
        }
    };
}
 
開發者ID:gpanther,項目名稱:regex-libraries-benchmarks,代碼行數:19,代碼來源:OroRegexFactory.java

示例10: WildCardFilter

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * @param wildcard
 * @throws MalformedPatternException
 */
public WildCardFilter(String wildcard,boolean ignoreCase) throws MalformedPatternException {
    this.wildcard=wildcard;
    StringBuilder sb = new StringBuilder(wildcard.length());
    int len=wildcard.length();
    
    for(int i=0;i<len;i++) {
        char c = wildcard.charAt(i);
        if(c == '*')sb.append(".*");
        else if(c == '?') sb.append('.');
        else if(specials.indexOf(c)!=-1)sb.append('\\').append(c);
        else sb.append(c);
    }
    
    this.ignoreCase=ignoreCase;
    pattern=new Perl5Compiler().compile(ignoreCase?StringUtil.toLowerCase(sb.toString()):sb.toString());
}
 
開發者ID:lucee,項目名稱:Lucee4,代碼行數:21,代碼來源:WildCardFilter.java

示例11: indexOf

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * return index of the first occurence of the pattern in input text
 * @param strPattern pattern to search
 * @param strInput text to search pattern
 * @param offset 
 * @param caseSensitive
 * @return position of the first occurence
 * @throws MalformedPatternException
*/
public static int indexOf(String strPattern, String strInput, int offset, boolean caseSensitive) throws MalformedPatternException {
       //Perl5Compiler compiler = new Perl5Compiler();
       PatternMatcherInput input = new PatternMatcherInput(strInput);
       Perl5Matcher matcher = new Perl5Matcher();
       
       int compileOptions=caseSensitive ? 0 : Perl5Compiler.CASE_INSENSITIVE_MASK;
       compileOptions+=Perl5Compiler.SINGLELINE_MASK;
       if(offset < 1) offset = 1;
       
       Pattern pattern = getPattern(strPattern,compileOptions);
       //Pattern pattern = compiler.compile(strPattern,compileOptions);
       

       if(offset <= strInput.length()) input.setCurrentOffset(offset - 1);
       
       if(offset <= strInput.length() && matcher.contains(input, pattern)) {
           return matcher.getMatch().beginOffset(0) + 1; 
       }
       return 0;
   }
 
開發者ID:lucee,項目名稱:Lucee4,代碼行數:30,代碼來源:Perl5Util.java

示例12: get

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
public synchronized List<String> get(String wildcard) throws MalformedPatternException, IOException {
	synchronized (data) {
		List<String> list=new ArrayList<String>();
		Iterator<Entry<String, String>> it = data.entrySet().iterator();
		WildCardFilter filter=new WildCardFilter( wildcard);
		Entry<String, String> entry;
		String value;
		while(it.hasNext()) {
			entry = it.next();
			value= entry.getValue();
			if(filter.accept(value)){
				list.add(entry.getKey());
				it.remove();
			}
		}
		if(list.size()>0)JavaConverter.serialize(data, file);
		return list;
	}
}
 
開發者ID:lucee,項目名稱:Lucee4,代碼行數:20,代碼來源:MetaData.java

示例13: WildCardFilter

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * @param wildcard
 * @throws MalformedPatternException
 */
public WildCardFilter(String wildcard,boolean ignoreCase) throws MalformedPatternException {
    this.wildcard=wildcard;
    this.ignoreCase=ignoreCase;
    StringBuilder sb = new StringBuilder(wildcard.length());
    int len=wildcard.length();
    
    for(int i=0;i<len;i++) {
        char c = wildcard.charAt(i);
        if(c == '*')sb.append(".*");
        else if(c == '?') sb.append('.');
        else if(specials.indexOf(c)!=-1)sb.append('\\').append(c);
        else sb.append(c);
    }
    pattern=new Perl5Compiler().compile(ignoreCase?sb.toString().toLowerCase():sb.toString());
}
 
開發者ID:lucee,項目名稱:Lucee4,代碼行數:20,代碼來源:WildCardFilter.java

示例14: doRereplace

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
protected String doRereplace( String _theString, String _theRE, String _theSubstr, boolean _casesensitive, boolean _replaceAll ) throws cfmRunTimeException{
	int replaceCount = _replaceAll ? Util.SUBSTITUTE_ALL : 1; 
	PatternMatcher matcher = new Perl5Matcher();
	Pattern pattern = null;
	PatternCompiler compiler = new Perl5Compiler();
   
	try {
		if ( _casesensitive ){
			pattern = compiler.compile( _theRE, Perl5Compiler.SINGLELINE_MASK );
		}else{
			pattern = compiler.compile( _theRE, Perl5Compiler.CASE_INSENSITIVE_MASK | Perl5Compiler.SINGLELINE_MASK );
		}
		
	} catch(MalformedPatternException e){ // definitely should happen since regexp is hardcoded
		cfCatchData catchD = new cfCatchData();
		catchD.setType( "Function" );
		catchD.setMessage( "Internal Error" );
		catchD.setDetail( "Invalid regular expression ( " + _theRE + " )" );
		throw new cfmRunTimeException( catchD );
	}

	// Perform substitution and print result.
	return Util.substitute(matcher, pattern, new Perl5Substitution( processSubstr( _theSubstr ) ), _theString, replaceCount );
}
 
開發者ID:OpenBD,項目名稱:openbd-core,代碼行數:25,代碼來源:reReplace.java

示例15: convertTemplate

import org.apache.oro.text.regex.MalformedPatternException; //導入依賴的package包/類
/**
 * 讀入模版並將參數代進去.
 * 
 * @param fileName
 *            the file name
 * @param pattern
 *            the pattern
 * @param values
 *            the values
 * @return the string
 * @throws MalformedPatternException
 *             the malformed pattern exception
 */
public static String convertTemplate(String fileName, String pattern, HashMap values) throws MalformedPatternException {
	String record = null;
	StringBuffer sb = new StringBuffer();
	// int recCount = 0;
	try {
		FileReader fr = new FileReader(fileName);
		BufferedReader br = new BufferedReader(fr);
		record = new String();
		while ((record = br.readLine()) != null) {
			// recCount++;
			// System.out.println(recCount + ": " + record);
			sb.append(StringUtil.convert(record, pattern, values) + "\n");
		}
		br.close();
		fr.close();
	} catch (IOException e) {
		System.out.println("oh! no, got an IOException error!");
		e.printStackTrace();
	}
	return sb.toString();
}
 
開發者ID:8090boy,項目名稱:gomall.la,代碼行數:35,代碼來源:StringConverter.java


注:本文中的org.apache.oro.text.regex.MalformedPatternException類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。