- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
// альтернатива регулярочке "^[\\da-fA-F]{8}-([\\da-fA-F]{4}-){3}[\\da-fA-F]{12}$"
public static boolean isValid(String uuid) {
if (uuid.length() != 36) {
return false;
}
for (int i = 0; i < 36; ++i) {
char c = uuid.charAt(i);
if ((0x842100 & (1 << i)) != 0) {
if (c != '-') {
return false;
}
} else if (c < '0' || c > 'f' || ((0x7e0000007e03ffL & (1 << (c - '0'))) == 0)) {
return false;
}
}
return true;
}