2009-05-20 5 views
2

je un document SQL formaté comme si (Il a environ 3000 entrées comme si):Conversion UUID d'un format à un autre

INSERT INTO DATA(UUID, IS_SIMULATED, ENVIRONMENT) VALUES('99b857afcb2e4f7dbf8657ea916ad9d7',FALSE,'SPACE') 
INSERT INTO DATA(UUID, IS_SIMULATED, ENVIRONMENT) VALUES('df8480e333c044f08ada939c66fa13f5',FALSE,'AIR') 
INSERT INTO DATA(UUID, IS_SIMULATED, ENVIRONMENT) VALUES('ad3e38a5e28f40ba8234bb8727936963',FALSE,'SURFACE') 
INSERT INTO DATA(UUID, IS_SIMULATED, ENVIRONMENT) VALUES('58f23ec0b9d141ed89dba8ce2f0fd377',FALSE,'SUBSURFACE') 
INSERT INTO DATA(UUID, IS_SIMULATED, ENVIRONMENT) VALUES('244182c8e53247529bd55f54c527bdbf',FALSE,'LAND') 

je dois formater toutes les chaînes UUID pour inclure les tirets comme si :

550e8400-e29b-41d4-a716-446655440000 

est-il un moyen simple pour analyser et à travers cette forme les UUID la façon dont je les ai besoin sans le faire à la main?

Répondre

3

Essayez cette expression régulière:

'([0-9a-f]{8})([0-9a-f]{4})([0-9a-f]{4})([0-9a-f]{4})([0-9a-f]{12})' 

et remplacer les matches par '$1-$2-$3-$4-$5'.