パターンに文字「B」があり、その後に最大6つの記号(文字と数字)があるかどうかを検証する必要があります。例:がありabcdB1234B123456
ます。見つかった答えは次のようになります:B1234
およびB123456
。
私はこのパターンを作りました:
[^B]{1,6}
しかし、それは正確ではありません。
このパターンはどうですか?
public static void main(String[] args) {
final Pattern pattern = Pattern.compile("B[aAc-zC-Z0-9]{0,6}");
final String string = " abcdB1234B123456";
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println(matcher.group());
}
}
出力:
B1234
B123456
このコードを試してください:
String data = "abcdB1234B123456";
Pattern pattern = Pattern.compile("B[aAc-zC-Z\\d]{0,6}");
Matcher matcher = pattern.matcher(data);
while (matcher.find()) {
// Indicates match is found. Do further processing
System.out.println(matcher.group());
}