次の問題について教えていただけないでしょうか。RegEx を使用してフォルダー パス内の文字列を検索しようとしています。
例えば:
C:\Users\user\Documents\mystarfleet34academybadge
RegEx式を使用して「fleet34academy」だけを見つけ、その結果をJavaで出力したいと思います。私は正規表現式を使用するのが初めてなので、絶え間ない質問をお詫びします。分割の使用を検討しましたが、機能させることができませんでした
ありがとう
このスニペットを確認してください
import java.util.regex.Matcher;
import java.util.regex.Pattern;
class New {
public static void main (String [] args)
{
String str="fleet34academy";
String path="C:\\Users\\user\\Documents\\mystarfleet34academybadge";
Pattern p = Pattern.compile(str,Pattern.CASE_INSENSITIVE|Pattern.LITERAL);
Matcher m = p.matcher(path);
while (m.find())
{
System.out.print("Start index: " + m.start());
System.out.print(" End index: " + m.end());
System.out.println(" Found: " + m.group());
}
}
}
java.util.regex パッケージにPatternとクラスがあります。Matcher
静的メソッド compile を使用して、Pattern一致する文字列、大文字と小文字を区別するかどうかなどのプロパティをフィードします。ここでドキュメントを確認できます。
オブジェクトではMatcher、パターンを見つける必要がある文字列を渡します。
m.find()パターンを見つけるために呼び出されます