开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 580|回复: 11
收起左侧

[已解决] 正则精益工具调试的和程序运行的结果不一致

 关闭 [复制链接]
结帖率:90% (9/10)
发表于 2023-5-6 09:42:58 | 显示全部楼层 |阅读模式   吉林省长春市
30精币
小弟有一个HL7协议的通讯协议,打算用正则表达式获取数据,但是我发现精易工具的调试结果,和生成完代码的结果不一致,不之到问题出在哪里了,还请大神们帮忙看看~通讯数据:
[JavaScript] 纯文本查看 复制代码
MSH|^~\&|MPCoagu|Mindray|||20230505155704||ORU^R01|901|P|2.3.1||||||UNICODE
PID|1||^^^^MR||^|||
PV1|1||^^|||||||||||||||||
OBR|1||78|00001^Automated Count^99MRC|||20230505132738|||||||20230505||||||78||||HM||||||||service
OBX|1|NM|14979-9^APTT^LN||28.76|Sec|21.00-37.00||||F
OBX|2|NM|6301-6^PT_INR^LN||0.95|INR|0.80-1.25||||F
OBX|3|NM|5902-2^PT^LN||11.36|Sec|9.20-15.00||||F
OBX|4|NM|5902-2^PT^LN||104.17|%|80.00-120.00||||F
OBX|5|NM|5902-2^PT^LN||0.95|Ratio|0.80-1.20||||F
OBX|6|NM|3243-3^TT^LN||13.98|Sec|10.00-20.00||||F
OBX|7|NM|3255-7^FIB^LN||2.62|g/L|2.00-4.00||||F


用工具调试的结果,能正常获取到104.17这个结果


最佳答案

查看完整内容

OBX\|.*?\|NM\|.*?\|\|(.*?)\|.*?\|(.*?)\| .版本 2 .子程序 正则匹配 .局部变量 表达式, 正则表达式类 .局部变量 i 表达式.创建 ("OBX\|.*?\|NM\|.*?\|\|(.*?)\|.*?\|(.*?)\|", #常量1, 假, 假, 真, 真) .计次循环首 (表达式.取匹配数量 (), i) 调试输出 (表达式.取子匹配文本 (i, 1, )) 调试输出 (表达式.取子匹配文本 (i, 2, )) .计次循环尾 () ...

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳

结帖率:100% (1/1)

签到天数: 21 天

发表于 2023-5-6 09:42:59 | 显示全部楼层   河南省郑州市
OBX\|.*?\|NM\|.*?\|\|(.*?)\|.*?\|(.*?)\|

  
子程序名返回值类型公开备 注
正则匹配  
变量名类 型静态数组备 注
表达式正则表达式类 
i  
表达式.创建 ("OBX\|.*?\|NM\|.*?\|\| (.*?)\|.*?\| (.*?)\|", #常量1, 假, 假, 真, )
计次循环首 (表达式.取匹配数量 (), i)
调试输出 (表达式.取子匹配文本 (i, 1, ))
调试输出 (表达式.取子匹配文本 (i, 2, ))
计次循环尾 ()

评分

参与人数 1荣誉 +1 收起 理由
项目部004 + 1 热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!

查看全部评分

回复

使用道具 举报

结帖率:100% (2/2)

签到天数: 27 天

发表于 2023-5-6 09:43:55 | 显示全部楼层   四川省绵阳市
感觉可以直接分割出来。当然用正则也可以。。
回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 21 天

发表于 2023-5-6 09:44:49 | 显示全部楼层   河南省郑州市
条件是什么?

补充内容 (2023-5-6 09:49):
OBX\|.*?\|NM\|.*?\|\|(.*?)\|
回复

使用道具 举报

结帖率:100% (2/2)

签到天数: 27 天

发表于 2023-5-6 09:45:06 | 显示全部楼层   四川省绵阳市
OBX|7|NM|3255-7^FIB^LN||2.62|g/L|2.00-4.00||||F
(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)
来个粗暴一点的。。。
回复

使用道具 举报

结帖率:90% (9/10)

签到天数: 25 天

 楼主| 发表于 2023-5-6 09:45:48 | 显示全部楼层   吉林省长春市
VX截图_20230506093933.jpg
正则表达式:
[JavaScript] 纯文本查看 复制代码
OBX\|[0-9]\|NM\|5902-2\^PT\^LN\|\|(.*?)\|%\|(.*?)\|(.*?)\|

  
子程序名返回值类型公开备 注
正则_匹配单个_DX_项目60025文本型 本子程序采用【精易编程助手】生成。成功返回匹配的文本,失败返回空文本。
参数名类 型参考可空数组备 注
源文本文本型欲被匹配的文本
匹配索引整数型表达式的索引,从1开始将代表为子匹配文本的索引。
子匹配索引整数型可空。 子表达式的索引,从1开始将代表为子匹配文本的索引
变量名类 型静态数组备 注
局_正则正则表达式DEELX采用的 正则表达式支持库(Deelx版) (2.3#0版) 支持库,无此支持库的请到官方网站下载正版易语言
局_匹配数整数型 
局_计次整数型 
局_搜索搜索结果DEELX0采用的 正则表达式支持库(Deelx版) (2.3#0版) 支持库,无此支持库的请到官方网站下载正版易语言
调试输出 (源文本)
如果真 (局_正则.创建 (“OBX\|[0-9]\|NM\|5902-2\^PT\^LN\|\|(.*?)\|%\|(.*?)\|(.*?)\|”, #正则常量 .全局模式, ))
信息框 (“正则创建失败,请检查正则表达式语句是否有误!”, #错误图标, , )
返回 (“”)
局_搜索 = 局_正则.搜索全部 (源文本, )
局_匹配数 = 取数组成员数 (局_搜索)
如果真 (局_匹配数 = 0)
信息框 (“匹配失败,请检检查正则语句是否有误,数量:0”, #错误图标, , )
返回 (“”)
如果真 (匹配索引 < 1)
信息框 (“参数二 - 匹配索引必须大于0。”, #错误图标, , )
返回 (“”)
判断 (匹配索引 > 0 子匹配索引 > 0)  ' 如果 匹配索引 和 子匹配索引 都大于0,则匹配子匹配文本
返回 (局_搜索 [匹配索引].取子匹配文本 (子匹配索引))
判断 (匹配索引 > 0)  ' 如果只有匹配索引大于0,则返回指定的匹配文本
返回 (局_搜索 [匹配索引].取匹配文本 ())


返回 (“”)


i支持库列表   支持库注释   
DeelxRegEx(未知支持库)
spec特殊功能支持库

程序运行后,获取的是上一个11.36的结果

测试.rar

231.59 KB, 下载次数: 1

回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 21 天

发表于 2023-5-6 09:45:58 | 显示全部楼层   河南省郑州市
OBX\|4\|NM\|.*?\|\|(.*?)\|
回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 21 天

发表于 2023-5-6 09:46:25 | 显示全部楼层   河南省郑州市
  
子程序名返回值类型公开备 注
正则匹配  
变量名类 型静态数组备 注
表达式正则表达式类 
i  
表达式.创建 ("OBX\|4\|NM\|.*?\|\| (.*?)\|", #常量1, 假, 假, 真, )
调试输出 (表达式.取匹配文本 (1, ))
回复

使用道具 举报

结帖率:90% (9/10)

签到天数: 25 天

 楼主| 发表于 2023-5-6 09:47:32 | 显示全部楼层   吉林省长春市
钥匙key 发表于 2023-5-6 09:45
OBX|7|NM|3255-7^FIB^LN||2.62|g/L|2.00-4.00||||F
(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*?)|(.*? ...

您这个我直接套用,会返回500多空数值
回复

使用道具 举报

结帖率:100% (2/2)

签到天数: 27 天

发表于 2023-5-6 09:48:29 | 显示全部楼层   四川省绵阳市
曜辉 发表于 2023-5-6 09:47
您这个我直接套用,会返回500多空数值

但是你也没说清楚。具体要什么数据呀。。

补充内容 (2023-5-6 09:48):
啥条件呀。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表