使用批处理脚本向XML添加新标记

使用批处理脚本向XML添加新标记,xml,Xml,我正在尝试在现有标记之后添加一个新的XML标记ClaimedMinClaimNum>00011470002 在下面的XML代码中 其中,新ClaimizedMinClaimNum标记中的新值00011470002应与另一个现有标记中的值相同 0001147-00002但不带连字符 请参考以下代码,并提出建议 当前XML代码: <?xml version="1.0" encoding="UTF-8"?> -<dataroot> -<Standard_x0020

我正在尝试在现有标记之后添加一个新的XML标记
ClaimedMinClaimNum>00011470002
在下面的XML代码中

其中,新ClaimizedMinClaimNum标记中的新值00011470002应与另一个现有标记中的值相同
0001147-00002
但不带连字符

请参考以下代码,并提出建议

当前XML代码:

 <?xml version="1.0" encoding="UTF-8"?>
 -<dataroot>
  -<Standard_x0020_Claim>

   <CLAIM_LOAD_TYPE_INDICATOR>U</CLAIM_LOAD_TYPE_INDICATOR>
   <PATIENT_LOAD_TYPE_INDICATOR>U</PATIENT_LOAD_TYPE_INDICATOR>
   <PATIENT_ID_NUM>431586385</PATIENT_ID_NUM>
   <LAST_NAME>BACON</LAST_NAME>
   <CLAIM_NUM>0001147-00002</CLAIM_NUM>
   <PATIENT_NOTES_LENGTH/>
   <JURIS_CLAIM_NUMBER/>
   <MPN_OPT_OUT_EFF_DATE/>
   <MPN_OPT_OUT_TERM_DATE/>

  </Standard_x0020_Claim>"

-
-
U
U
431586385
培根
0001147-00002
"
预期的XML:

<?xml version="1.0" encoding="UTF-8"?>
-<dataroot>
-<Standard_x0020_Claim>

  <CLAIM_LOAD_TYPE_INDICATOR>U</CLAIM_LOAD_TYPE_INDICATOR>
  <PATIENT_LOAD_TYPE_INDICATOR>U</PATIENT_LOAD_TYPE_INDICATOR>
  <PATIENT_ID_NUM>431586385</PATIENT_ID_NUM>
  <LAST_NAME>BACON</LAST_NAME>
  <CLAIM_NUM>0001147-00002</CLAIM_NUM>
  <PATIENT_NOTES_LENGTH/>
  <JURIS_CLAIM_NUMBER/>
  <MPN_OPT_OUT_EFF_DATE/>
  <MPN_OPT_OUT_TERM_DATE/>
  <ClaimAdminClaimNum>000114700002</ClaimAdminClaimNum>

 </Standard_x0020_Claim>"

-
-
U
U
431586385
培根
0001147-00002
000114700002
"

使用支持XML的工具修改XML。例如,在中,您可以编写:

open file.xml ;
my $claim_num = xsh:subst(/dataroot/Standard_x0020_Claim/CLAIM_NUM, '-', '') ;
my $new := insert element ClaimAdminClaimNum
                  after /dataroot/Standard_x0020_Claim/MPN_OPT_OUT_TERM_DATE ;
set $new/text() $claim_num ;

save :b ;

使用XML感知工具修改XML。例如,在中,您可以编写:

open file.xml ;
my $claim_num = xsh:subst(/dataroot/Standard_x0020_Claim/CLAIM_NUM, '-', '') ;
my $new := insert element ClaimAdminClaimNum
                  after /dataroot/Standard_x0020_Claim/MPN_OPT_OUT_TERM_DATE ;
set $new/text() $claim_num ;

save :b ;

您好,先生,非常感谢您的回复。我不知道如何用XSH编写代码,在google中搜索以找到安装和编辑XML的软件。此外,同一个XML文件中有多个声明必须进行此更改,并且我必须使用此预期输出修改将近150个XML文件。这个循环可以使用XSH完成吗?如果使用批处理脚本也可以实现这一点,请在BAT脚本上提出解决方案,如我提供的链接所示,
xsh
可以在元素和文件上循环。非常好!我将安装该编辑软件,并尝试您的代码,让您知道。谢谢。如果可能的话,任何人也请建议一个关于BAT脚本的替代解决方案。您好,先生,我没有任何权利在我的客户端计算机上安装任何软件,我的客户端也不鼓励这样做。BAT脚本中是否有可用的解决方案?先生,您好,非常感谢您的回复。我不知道如何用XSH编写代码,在google中搜索以找到安装和编辑XML的软件。此外,同一个XML文件中有多个声明必须进行此更改,并且我必须使用此预期输出修改将近150个XML文件。这个循环可以使用XSH完成吗?如果使用批处理脚本也可以实现这一点,请在BAT脚本上提出解决方案,如我提供的链接所示,
xsh
可以在元素和文件上循环。非常好!我将安装该编辑软件,并尝试您的代码,让您知道。谢谢。如果可能的话,任何人也请建议一个关于BAT脚本的替代解决方案。您好,先生,我没有任何权利在我的客户端计算机上安装任何软件,我的客户端也不鼓励这样做。BAT脚本中是否有可用的解决方案?请帮忙。