私はマッチ( "regex")を使って例外をスローしようとしていますが、いつも間違っています。タイトルのパターンと一致する方法はありますか?たとえば、パターンは「s98340」または「s12345」でなければなりません。冒頭には1文字しかなく、その後に5桁が続きます。 は、例外をキャッチするために:私は、SR = "s4a234" の文字列を設定するとjava regex:1文字のパターンが5桁の範囲で続く0-9
try{
if(originalLocation.length() != 6 && originalLocation.matches("s[0-9]{5}"))
throw new IllegalOriginalLocationException("Original Location is invalid.");
}
catch(IllegalOriginalLocationException ex){
System.out.println(ex);
}
を、例外がキャッチされていません。
表示されるコードと*具体的なエラーをさらに表示してください。 – Makoto
パターンは正しいです。 's.matches(" s [0-9] {5} ")'は、文字列が 's'で始まり正確に5桁の場合にのみtrueを返します。 –
は 'patternとmatcher'で' find'を使いたいと思っています –