マッチングNumbers:(letters OR numbers):(letters OR numbers)
2 番目と 3 番目の部分のみを数字または文字にする必要がある場合は、次のパターンを使用できます。
String pattern = "^\\d+(:([A-Za-z]+|\\d+)){2}$";
基本的には、一連の数字 ( \\d+
) と、それに続く 2 回繰り返される一連の文字を探します。
- aa で始まり
:
、その後に続く
- 一連の文字 (英語)、つまり
[A-Za-z]
, OR
- 数列
および文字はアンカーで^
あり$
、「文字列の始まり」と「文字列の終わり」を意味します。
例:
public class RegexTest {
public static void Main(String[] args) {
String pattern = "^\\d+(:([A-Za-z]+|\\d+)){2}$";
String example = "333:abc:123456";
if (example.matches(pattern)) {
System.out.println("Matches");
}
}
}
マッチングNumbers:(both letters and numbers:(both letters and numbers)
これには、次のパターンを使用できます。
String pattern = "^\\d+(:[A-Za-z0-9]+){2}$";
一致するもの:
- 一連の数字の後に続く
- コロンの後に任意の文字または数字の組み合わせが続く
public class RegexTest {
public static void Main(String[] args) {
String pattern = "^\\d+(:[A-Za-z0-9]+){2}$";
String example = "333:a3b4c:12adf3456";
if (example.matches(pattern)) {
System.out.println("Matches");
}
}
}
この例は一致します。