数据库有如下一段诊断语句
心脏测值:略 enter 心脏位置正常,各腔室内径正常,室间隔、左室后壁厚度、回声正常,室壁运动未见明显不协调,心脏各瓣膜结构、回声正常,
CDFI:收缩期三尖瓣可见少量反流信号。Doppler 示二尖瓣频谱 A 峰增高。enter 心包腔内未扫及明显积液回声。enter 双侧甲状腺外形对称,不大,峡部不厚,被膜光滑,腺实质回声不均匀,实质内可见多个大小不等的等回声、低回声及囊性回声,结节较大约 23×13mm,边界清楚,形态规整,较大位于右叶。CDFI:腺实质内血供不丰富。enter 右侧颈动脉后壁内膜面处可见大小约 6.7×2.0mm 的斑块附着,左侧颈动脉窦后壁内膜面处可见一大小约 7.4×2.1mm 的斑块附着;双侧椎动脉未见异常。enter 肝脏大小、形态正常,包膜完整,实质回声均匀,肝内管状结构走形、内径正常。肝静脉、门静脉内径正常,肝周间隙未见异常。enter 胆囊外形不大,轮廓清楚,囊壁不厚,囊壁上可见一大小约 6mm 的附壁高回声,胆汁透声良好,肝外胆管未见明显增粗。enter 脾脏大小、形态正常,包膜完整,实质回声均匀,脾静脉内径正常,脾周间隙未见异常。enter 胰腺大小、形态正常,包膜完整,实质回声均匀,胰管不扩张。enter 双肾大小、形态正常,包膜完整,右肾实质内可见一大小约 14mm 的囊性无回声区,边界清楚,形态规整,左肾实质回声均匀,肾窦回声密集,肾盂、肾盏不扩张,未见结石影。 enter 双侧输尿管未见明显扩张。enter 膀胱充盈良好,膀胱壁不厚,内壁光滑,腔内未见明显结石及占位回声。
前列腺外形增大,宽径 41mm,前后径 42mm,上下径 43mm,轮廓清楚,实质内可见不规则片状强回声,另可见一大小约 8mm 的囊性无回声区,边界清楚,形态规整。entr
我想把这段文本数据里面的各个参数提取出来,如 key 心脏测试:vaule 略、key 心脏位置:value 正常 key 前列腺外形:vaule 增大、key 前列腺宽径:value41mm、key 前列腺前后径:value42mm 、key 前列腺上下径:value43mm 这样我就可以使用 python 程序分析统计每个病因和相互关系。
我想法是,先根据句号把文本分隔成列表,然后使用正则替换处理,但是正则也不是万能的,有些关联语句不好写正则。 方法二:使用分词方式,把文本按一个已有的分词列表进行替换比如列表['胆囊外形不大','心脏位置正常','双侧甲状腺外形对称'],存在列表里面的文本就将对应的文本替换为对应的键值对,比如有'心脏位置正常' 直接替换为:key 心脏位置:value 正常 但是这样替换有很大一部分会遗漏尤其特殊描述,比如“前列腺外形增大,宽径 41mm,前后径 42mm。。。。”这个后面的宽径和前后径就不好取,别的项目如心脏出现这个字段“宽径、前后径”也容易混肴
想问下大家有没有好的办法,或者一些高效实用的 python 库文件可以有效实现这个功能。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.