我无法使用XML中的find()方法进行搜索

时间:2017-05-10 14:18:05

标签: javascript jquery ajax xml hl7

这是我的XML:monitor.xml

if 'geeta' in 'geetansh'.split():

我试图在<?xml version="1.0" encoding="utf-8" ?> <ORU_R01> <MSH> <MSH.1>|</MSH.1> <MSH.2>^~\&amp;</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()来检测点字符?

1 个答案:

答案 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();

希望这有帮助!