0

我有非结构化数据,我必须提取 BP 值和日期(具有不同的格式),如下所示。现在我有一个正则表达式函数来提取 Bp 值和 BP 值后面的日期。

我有一个特定情况,如图中突出显示的,其中日期后跟“已记录”一词,并且还有一个时间戳。

此外,还有日期出现在 BP 值之前的情况。我还需要提取该日期和 BP 值。

在此处输入图像描述

目前,我的代码给出了 BP 值和 BP 值之后的日期。现在我想要这个正则表达式以及如图所示的新案例来提取所有案例。

我在下面附上了正则表达式代码。

regex = r'\b(?:BP:?(?:-Sitting)?|Blood Pressure) \d+/\d+(?: \d+/\d+|  \d+/\d+)*(?: sm| -Lw| cB| Jr|\
    -aA| cs| -ic| ic| -RG|  kA| -sL| BL| kc| am| -sH| sH| es| ts| np| 8s| ca| Pm| JE| so| cp| v8| Eu| -cp|\
    Pm| EB| Fr| -Fr| -ms| -LN| -mT| -mk| -GF| -HO| Jp| wD| 8m| mc| -mc| Yr| -Lp| -ml| -LA| s/d| -aA| s/d|mmHg| mm Hg|\
    mm hg.|.?)?|B/P - (?:Sys|Dias)tolic \d+|(?:Sys|Dias)tolic Blood Pressure \d+ \w+\b'

当前输出的图像如下所示,其中不包括日期。

在此处输入图像描述

如果有人需要访问数据,我也会以字符串格式附加数据。

体重:188 磅,体重 124 磅(56.2 公斤),身高:108.2 厘米体重:20.9 公斤体重指数:18 与父亲、母亲住在一起。,Vials BP 120/75 Hu 52" We 202 I (916 kg) BMI 36.95 kg/m 354 2 mi ,W197 Ib 8 oz (44.2 kg) SpO2 99% BMI 19.69 kg/m2 BSA 1.36 m2 ,重量 316kg ,HT: 160 厘米 WT:79.6 公斤 BMI:31.09,血压 106/63 02/27/2019,B/P - 收缩压 104,B/P - 舒张压 72,BP-坐姿 109/70 mmHg,BP:101/72 左臂,正常袖带,2018 年 9 月 25 日坐姿 123/76,收缩压 100 mmHg,舒张压 68 mmHg,BP 128/80 128/81 128/82 128/83,疼痛等级 0 1-10 氧饱和度 % 95 % HR 83 /min BP 144/68 mm Hg Ht , . _ 重复 BP 130/80。刚刚感觉她确定自己感觉 FM。计划奶瓶喂养 ,血压 106/64s/d 78th / 77th percentileqyy 左臂坐姿,血压 114/76 s/d 77th 7 goth percentileqyyy 右臂坐姿,

对此的任何帮助将不胜感激。

4

1 回答 1

0

您可以使用与指定情况匹配的替换来扩展模式,匹配Recorded 左侧的日期模式,或者匹配BP右侧Blood Pressure的日期模式

(?<=Recorded )\d{1,2}[A-Za-z]{3}\d{4}\b|\d{1,2}/\d{1,2}/\d{2,}\b(?= BP| Blood Pressure)

更新后的模式看起来像

\b(?:BP:?(?:-Sitting)?|Blood Pressure) \d+/\d+(?: \d+/\d+|  \d+/\d+)*(?: sm| -Lw| cB| Jr|\
    -aA| cs| -ic| ic| -RG|  kA| -sL| BL| kc| am| -sH| sH| es| ts| np| 8s| ca| Pm| JE| so| cp| v8| Eu| -cp|\
    Pm| EB| Fr| -Fr| -ms| -LN| -mT| -mk| -GF| -HO| Jp| wD| 8m| mc| -mc| Yr| -Lp| -ml| -LA| s/d| -aA| s/d|mmHg| mm Hg|\
    mm hg.|.?)?|B/P - (?:Sys|Dias)tolic \d+|(?:Sys|Dias)tolic Blood Pressure \d+ \w+\b|(?<=Recorded )\d{1,2}[A-Za-z]{3}\d{4}\b|\d{1,2}/\d{1,2}/\d{2,}\b(?= BP| Blood Pressure)

完整模式的正则表达式演示

于 2021-03-12T17:34:56.397 回答