この種の質問が非常に頻繁に提案されることは知っていますが、この正規表現が一致しない理由がわかりません。行頭に「M」があるかどうかを確認したい。最後に、行末にパスが必要です。これが、startsWith() が私のニーズに合わない理由です。
line = "M 72208 70779 koj src\com\company\testproject\TestDomainf1.java";
if (line.matches("^(M?)(.*)$")) {}
私は別の方法も試しました:
Pattern p = Pattern.compile("(M?)");
Matcher m = datePatt.matcher(line);
if (m.matches()) {
System.out.println("yay!");
}
if (line.matches("(M?)(.*)")) {}
ありがとう