我有一个包含9000行的XML文件。
每个XML节点中都有大约10个属性。
其中一个属性是:
<CreatedDate>2009-10-26T02:39:24</CreatedDate>
我需要做的是将DateTime的格式更改为:
<CreatedDate>27/05/2010 07:30:16</CreatedDate>
但我不知道该怎么做。
我知道我可以编写一个正则表达式来识别需要替换的每个值,但是如何才能使它只改变我想要的值并保持其余的值呢?
我考虑过编写一个宏,但是文档太大了,无法以我可以预测我想要改变的元素的方式进行格式化,并且搜索某些内容似乎不适用于宏。
有什么想法吗? - 我相信它可以做到。
答案 0 :(得分:2)
如果您只想在<CreatedDate>
标签内更改日期时间格式,请尝试使用Notepad ++中的正则表达式替换:
替换它:
<CreatedDate>(\d{4})\-(\d{2})\-(\d{2})T([\d\:]*)</CreatedDate>
有了这个:
<CreatedDate>$3/$2/$1 $4</CreatedDate>
我们使用$符号及其位置来引用每个括号,因此我们可以在替换结果中使用这些值。
答案 1 :(得分:2)
查找
<CreatedDate>(\d\d\d\d)-(\d\d)-(\d\d)T(\d\d):(\d\d):(\d\d)</CreatedDate>
替换:
<CreatedDate>\3/\2/\1 \4:\5:\6</CreatedDate>
\ d匹配数字。 并且大括号创建一个您引用的组,例如\ 1