这是我的XML:monitor.xml
if 'geeta' in 'geetansh'.split():
我试图在<?xml version="1.0" encoding="utf-8" ?>
<ORU_R01>
<MSH>
<MSH.1>|</MSH.1>
<MSH.2>^~\&</MSH.2>
<MSH.3>hospital</MSH.3>
<MSH.7>20170509090310</MSH.7>
<MSH.9>
<MSH.9.1>ORU</MSH.9.1>
<MSH.9.2>R01</MSH.9.2>
</MSH.9>
<MSH.12>2.3.1</MSH.12>
</MSH>
<PID>
<PID.2>SOPITA PALOMINO</PID.2>
<PID.3>SOPITA PALOMINO</PID.3>
<PID.5>S S</PID.5>
<PID.7>19881107</PID.7>
<PID.8>U</PID.8>
</PID>
<PV1>
<PV1.2>U</PV1.2>
<PV1.3>
<PV1.3.3>Bed1</PV1.3.3>
</PV1.3>
<PV1.18>adult</PV1.18>
<PV1.44>20170421</PV1.44>
</PV1>
<OBR>
<OBR.7>20170509090310</OBR.7>
</OBR>
<OBX>
<OBX.2>NM</OBX.2>
<OBX.3>WEIGHT</OBX.3>
<OBX.5>-1.0</OBX.5>
<OBX.6>kg</OBX.6>
</OBX>
<OBX>
<OBX.2>NM</OBX.2>
<OBX.3>HEIGHT</OBX.3>
<OBX.5>-1.0</OBX.5>
<OBX.6>cm</OBX.6>
</OBX>
<OBX>
<OBX.2>NM</OBX.2>
<OBX.3>SpO2</OBX.3>
<OBX.5>96</OBX.5>
<OBX.6>%</OBX.6>
<OBX.7>90-100</OBX.7>
</OBX>
<OBX>
<OBX.2>NM</OBX.2>
<OBX.3>PR</OBX.3>
<OBX.5>69</OBX.5>
<OBX.6>bpm</OBX.6>
<OBX.7>50-120</OBX.7>
</OBX>
</ORU_R01>
标记内找到<OBX.3>
标记,但是当我使用find()方法时,它无法识别点字符(。)
当我将<OBX>
XML标记更改为<OBX.3>
(没有点字符)时,find()方法会识别标记。
<OBX3>
我可以用什么方法代替find()来检测点字符?
答案 0 :(得分:1)
您需要使用正则表达式来获取其中包含点的xml节点。
您需要将语句更改为
var hl7_cabecera = $(xmlDoc).find('OBX.3'.replace(/\./g,'\\.')).text();
var hl7_valor = $(xmlDoc).find('OBX.5'.replace(/\./g,'\\.')).text();
var hl7_metrica = $(xmlDoc).find('OBX.6'.replace(/\./g,'\\.')).text();
希望这有帮助!