2017-03-29 21 views
0

私が書いた少しの正規表現コードに問題があります。コードは、基本的にチェックされている文字列を含む "longString"をチェックし、正規表現に一致する文字列内の単語を出力します。Regex java issue code not working

import java.util.regex.*; 

public class regexPractice 
{ 

    public static void main(String[] args) { 
     String longString = " Derek Banas CA "; 

     regexChecker(longString, "\\s[A-Za-z]{2,20}\\s"); 
    } 

    public static void regexChecker(String theregex, String stringCheck) { 
     //theregex is the regex your searching for 

     Pattern Checkregex = Pattern.compile(theregex); 

     Matcher regexMatcher = Checkregex.matcher(stringCheck); 

     while (regexMatcher.find()) { //kicks out all the matches for you 
      if (regexMatcher.group().length() != 0) { 
       System.out.println(regexMatcher.group().trim()); 
       //trim gets rid of all the white space 
      } 
     } 
    } 
} 

コードを実行すると、エラーメッセージも表示されません。コードを再チェックしてもエラーは見つかりませんでした。

ところで、私はアンドロイドスタジオを使用しています。

答えて

0

引数を間違った順序で渡しています。メソッドのシグネチャが逆になっています

+0

ああ、私はそれを気付かなかった、ありがとう。 –

0

「z」(通常の場合)であるa-Zを使用しているため、正規表現が正しくありません。

+0

うん、やっぱり、ありがとう、とにかく感謝! :) –