我正在尝试添加一个新的计算列,该列计算字符串中的半冒号数并向其中添加一个。所以我的列包含一堆别名,我需要知道每行有多少。
例如, 一个; B; C; D
所以基本上这意味着有4个别名(3个半冒号+ 1个)
需要为超过200万行执行此操作。求救!
答案 0 :(得分:3)
基本思路是从字母的长度中减去;
个字符的长度:
len([columnName])-len(Substitute([columnName],";",""))+1
答案 1 :(得分:1)
这是一个正则表达式:
Len(RXReplace([Column 1], "(?!;).", "", "gis"))+1
RXReplace
作为参数:
我们将它包装在一个Len
中,它给出了分号的数量,因为剩下的就是剩下的所有分号,最后我们将它加1来得到最终的结果。
您可以在此处阅读有关正则表达式的更多信息:https://msdn.microsoft.com/en-us/library/az24scfc(v=vs.110).aspx但简而言之,它表示匹配不是半冒号的所有内容。
您可以在此处阅读有关RXReplace和Len的更多信息:https://docs.tibco.com/pub/spotfire/6.0.0-november-2013/userguide-webhelp/ncfe/ncfe_text_functions.htm