В моем проекте я использую UUID.fromString()
для преобразования строки в UUID
, но если строка не является UUID
, она будет кидать exception
, так как я могу проверить эту строку?Как судить строку - это тип UUID?
ответ
Вы должны использовать регулярное выражение, чтобы проверить его, например:
/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/
испытания его с яйцом -9ABC-DEF0-1234-56789ABCDEF0
или с кронштейнами
/^\{?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\}?$/
Просто бросаю мои 2 цента здесь, так как я видел другой ответ с 35 голосами. Люди должны использовать это, если это два варианта. В основном потому, что я обнаружил, что JDK, который я использовал, просто выбрасывал исключение на основе этой мелочи, если -> 'String [] var1 = var0.split (" - "); if (var1.length! = 5) { throw new IllegalArgumentException ("Неверная строка UUID:" + var0); } ' – Victor
https://stackoverflow.com/questions/18724750/foolproof-way-of-differentiating-string-and-uuid – Victor
Обращайтесь к исключению и сделайте что-нибудь в этом случае. Например:
try{
UUID uuid = UUID.fromString(someUUID);
//do something
} catch (IllegalArgumentException exception){
//handle the case where string is not valid UUID
}
Возможно, было бы невероятно иметь данные, содержащие UUID и другие элементы. Исключения должны быть исключительными, а не рутинными; не используйте исключения для управления потоком. Для этого существует несколько причин. (Https://www.google.com/search?q=exception+flow+control) – erickson
http://docs.oracle.com/javase/7/docs/api /java/util/UUID.html#fromString(java.lang.String), этот метод выдает это исключение. С этим вполне разумно обращаться. И эта обработка в этом конкретном случае, вероятно, будет лишь некоторым протоколированием для дальнейшего использования. –
Разумно обрабатывать его там, если в контексте вашего приложения вы ожидаете иметь UUID, и это было бы исключительным для того, чтобы строка была недопустимым. С другой стороны, если ваше приложение является парсером, а грамматика принимает UUID и идентификаторы других типов в конкретной альтернативе, тестирование такого формата будет неуместным. – erickson
- 1. Hibernate UUID как тип UUID
- 2. Как судить IE тип события в JavaScript
- 3. Java. UUID, как это работает
- 4. Как изменить UUID на строку?
- 5. Ватерлайн Тип UUID и валидация
- 6. Использование UUID.randomUUID(), тип 4 UUID
- 7. Тип данных UUID в DynamoDB
- 8. питон, как судить, является ли переменная логический тип
- 9. как судить AndroidPackge действительно
- 10. Как преобразовать значение UUID в строку
- 11. Проверьте строку как действительный UUID в Swift
- 12. Как судить пар - поток jpeg?
- 13. Cassandra: изменить тип от UUID до TIMEUUID
- 14. Как судить о цвете UILabel?
- 15. Как судить о выходе окна?
- 16. JavaScript, попросите пользователя вставить номер и судить, если это просто
- 17. Как преобразовать двоичный UUID в UUID в scala?
- 18. Представляя UUID-структуру как символ UUID [128]
- 19. Сгенерировать строку UUID с включенным ARC
- 20. cutdown uuid далее, чтобы сделать короткую строку
- 21. Как изменить uuid wmic csproduct get uuid
- 22. Как хранить uuid как номер?
- 23. Преобразование строки в строку UUID форматирования
- 24. C++ Как это неполный тип?
- 25. Я хочу судить о параметре datatype при вставке в sqlite, как это сделать? О развитии Ios
- 26. Как преобразовать строку в кодировке Base64 в UUID в Java
- 27. Получите шаблонный тип как строку
- 28. Что такое bluetooth uuid? и как мне это получить?
- 29. Будет ли это работать как генератор UUID в PHP?
- 30. Как форматировать строку в UUID в Excel VBA?
Try Http: // StackOverflow .com/questions/18724750/foolproof-way-of-differiating-string-and-uuid - это может быть именно то, что вы ищете. – Ewald
Возможное дублирование: http://stackoverflow.com/questions/7905929/how-to-test-valid-uuid-guid – Masudul