jan*_*jan 1 java regex validation uuid
我以“005056963AB75FD48BDC59C100314C40”之类的格式获取UUID,并想验证它们。我试过这样的代码:
public boolean isUUID(String uuid){
try {
UUID.fromString(uuid);
} catch (Exception e) {
return false;
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
但这会告诉我“005056963AB75FD48BDC59C100314C40”不是有效ID。另一方面,站点http://guid.us/Test/GUID告诉我它是,并给我一个添加了“-”的 UUID。是否有一种优雅的方法可以在 Java 中验证此 UUID,还是必须手动将“-”添加到正确的位置?
尝试正则表达式
uuid = uuid.replaceAll("(.{8})(.{4})(.{4})(.{4})(.+)", "$1-$2-$3-$4-$5");
UUID.fromString(uuid);
Run Code Online (Sandbox Code Playgroud)