从文本字段中提取数字我有一列包含技术人员输入的文本注释。 他们输入系统使用时间,我需要将其提取到自己的列中。 幸运的是,数据是相当一致的,因此我能够使用Regex Match()提取信息,但是选择最后一个值会让我大跌眼镜。
Regex Match( :diagnosis, "(ys.+sage: ?)(\d{1,5})\n" );如何有效地从文本块中提取系统使用时间?
示例文本如下所示:
UDI#123456789123456789123456789456123
设备已收到,缺少封面。
服务的主要原因:xxxxxxxxxx
系统使用率:2372
系统PM到期日:7627
xxx用法:120
yyy的用法:208
分析工具数据表回复:从文本字段中提取数字如果数据足够一致,则可以通过将Substr与Contains(和Length)结合使用,而无需使用正则表达式
Names Default To Here(1);
text ="UDI# 123456789123456789123456789456123
Device received, missing cover.
Major Reason For Service: xxxxxxxxxx
System usage: 2372
System PM due in: 7627
xxx usage: 120
yyy usage: 208";
stringToSearch = "System usage: ";
sysUsage = num(Substr(text, Contains(text, stringToSearch) + length(stringToSearch), 4));
show(sysUsage);
回复:从文本字段中提取数字这是使用JSL函数提取系统使用率的解决方案
Num( Word( 1, Substr( :Diagnosis, Contains( :Diagnosis, "System usage:" ) + 14 ), "\!n" ) )

我已附上以上数据表