Xml 正则表达式-带制表符和字母顺序的格式

Xml 正则表达式-带制表符和字母顺序的格式,xml,regex,vim,alphabetical,Xml,Regex,Vim,Alphabetical,是否可以使用正则表达式来转换此参数 <site-ui:header title="error" backURL="javascript:history.go(-1);" /> 进入这个 <site-ui:header backURL="javascript:history.go(-1);" title="error" /> 基本上,我的目标是格式化此xml,使字段按字母顺序排列(例如,backURL位于标题之前),并且每个字段都应该有两个空格 如

是否可以使用正则表达式来转换此参数

<site-ui:header title="error" backURL="javascript:history.go(-1);" />

进入这个

<site-ui:header 
  backURL="javascript:history.go(-1);" 
  title="error" 
/>

基本上,我的目标是格式化此xml,使字段按字母顺序排列(例如,backURL位于标题之前),并且每个字段都应该有两个空格


如果可以做到这一点,任何指针都会非常有用!更有用的是vim的精确正则表达式。

不完全确定,我对正则表达式及其功能的了解很少。但这里有一个工具,一直帮助我


听起来更像是xslt/xsd的工作,或者是带有少量正则表达式和其他字符串操作的自定义解析器

一个正则表达式是做不到的。尤其是字母部分


用Vim宏或脚本执行这项操作很可能是可行的,但超出了我微薄的Vim能力。

除了排序之外,这些简单的替换应该可以完成这项工作:

:%s/ title=/^V^M  title=/g
:%s/ backURL=/^V^M  backURL=/g

请注意,上面的
^V^M
是一个字面意义上的^V^M.

谢谢,我只需要知道这些