J'essaye de trouver une expression de recherche/remplacement qui convertira des insertions de style Oracle avec des champs d'horodatage pour insérer des instructions pour une autre base de données.IntelliJ IDEA: regex pour supprimer la syntaxe Oracle to_timestamp
Fondamentalement, je veux convertir des chaînes comme:
to_timestamp('13-SEP-09 12.00.00.000000000 PM','DD-MON-RR HH.MI.SS.FF AM')
juste:
'13-SEP-09 12.00.00.000000000 PM'
J'ai essayé plusieurs expressions dans la recherche de l'IDEA/remplacer l', mais je ne peux toujours pas bien compris. Celui-ci:
to_timestamp(.[^,]*,.[^)]*)
remplacé par 1 $ finit par correspondre à la chaîne que je veux, sauf la parenthèse fermante, mais supprime uniquement la première partie. Je me retrouve avec:
('13-SEP-09 12.00.00.000000000 PM','DD-MON-RR HH.MI.SS.FF AM')
Je ne comprends vraiment pas ce qui se passe ici.
+1 pour le décomposer et ne pas seulement fournir une solution. –
Merci! Cela fonctionne parfaitement, et je n'aurais jamais pu le faire seul. Je pensais que je comprenais assez bien regex, mais je ne comprends toujours pas pourquoi nous avons besoin d'une parenthèse échappée pour correspondre et une parenthèse sans échappement pour commencer à capturer. Si quelqu'un peut me diriger vers une bonne ressource regex, je serais très obligé. –
http://www.regular-expressions.info/tutorial.html est un bon point de départ. Ensuite, il y a les livres: http://www.amazon.com/exec/obidos/ASIN/0596520689/jgsbookselection et http://www.amazon.com/exec/obidos/ASIN/0596528124/masteringregu-20 –