[英]is it possibile extract a fixed format string form a long string in spotfire?
我正在尝试从列中提取固定格式字符串,该列包含多个固定格式字符串。
例如
2018-1234567,2018-0123456,2018-2345678
但它总是包含多种垃圾字符串(假设此列手动输入)
例如
SN:2018-1234567 和 2018-0123456 和 2018-2345678
或者
追踪编号:2018-1234567; 2018-0123456;2018-2345678
我可以使用 RXREPLACE 函数来消除其中的一些,但将来我无法删除一些不可预测的垃圾字符串。
所以我想知道,是否有一个函数可以从该列中提取固定格式的字符串? 固定格式字符串为 YYYY-NNNNNNN(年份-7 位数字)
如果我能做到这一点,我就不必担心此列中的未来未知垃圾字符串。
多谢!
这可能不是一个铸铁解决方案,但它适用于示例,没有神秘的环顾四周,如果您很高兴有一个空格作为分隔符:
Trim(RXReplace([mystring],"\\\D*\\\d*\\\D*(\\\d{4}-\\\d{7})","$1,","g"))
它捕获您喜欢的字符串 (\\\\d{4}-\\\\d{7}) 并将其替换为 $1 后跟一个空格。 没有被 () 包围的所有东西都被抛在后面。 它假设在每个字符串之前/之间出现的任何“垃圾”都是由数字 (\\\\d) 和非数字 (\\\\D) 混合而成的。
事实上,简单的 \\\\D* 会起作用,但它不会删除诸如跟踪123 ID 之类的东西:
Trim()
是删除最后一个空格。
盖亚
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.