从较长的字符串中提取特定字符串| 资源 | 温度 |
| MZ_ES20-ATF786_D03-R_8x8-5hz_NoCG_0klux-black3--5degc__20181105_203705 | -5 |
| MZ_ES20-ATF786_D03-R_8x8-5hz_NoCG_0klux-grey17--30degc__20181105_194659 | -30 |
| MZ_ES20-ATF786_D03-R_8x8-5hz_NoCG_0klux-white64-70degc__20181105_183920 | 70 |
你好,
我正在尝试使用 JSL 从上面 JMP 表中的“源”列中提取温度
在温度列中,我写下了我想要的结果。 我的问题是颜色之间的分隔符
(黑色3,灰色17和白色64),温度是破折号“-”,但有时温度是负数,也是“-”
我已经用 Word 功能尝试了很多东西,但到目前为止都无济于事。 对此的任何帮助将不胜感激。
谢谢并恭祝安康,
大卫
回复:从较长的字符串中提取特定的字符串谢谢,很有帮助
亲切的问候,
大卫。
回复:从较长的字符串中提取特定的字符串
你好,
谢谢,这很有效,而且非常简洁!
亲切的问候,
大卫。回复:从较长的字符串中提取特定的字符串这是一个我相信可以解决问题的公式
degCPosition = Contains( :Source, "degc__" ) - 1;
i = degCPosition;
While( Substr( :Source, i, 1 ) != "-", i-- );
If( Substr( :Source, i - 1, 1 ) == "-",
result = Num( Substr( :Source, i, (degCPosition - i) + 1 ) ),
result = Num( Substr( :Source, i + 1, degCPosition - i ) )
);
result;

回复:从较长的字符串中提取特定的字符串Regex() 字符串函数很容易解决这个问题。尝试这个:
Num( Regex( :Source, "-(-?\d\d?\d?)degc", "\1" ) )