如何在SSIS中提取子字符串

时间:2015-10-22 20:07:42

标签: ssis

我正在foreach循环中处理CSV文件以导入到SQL表中。该文件的名称遵循以下模式: anything_name.csv 其中:

anything可以是任何东西,包括下划线和点。

name是我想要提取的(在变量或派生列中)。

.csv将会在那里。

有没有办法在SSIS中执行此操作而无需使用C#脚本?

1 个答案:

答案 0 :(得分:0)

当然,您可以使用SSIS表达式来实现这一目标。

在数据流中获得文件名后,尝试使用以下表达式的派生列:

REVERSE(SUBSTRING(REVERSE(FileName),5,FINDSTRING(REVERSE(FileName),"_",1) - 5))

使用FileName = Any_thing_123.az_actualname.csv

进行测试

表达式返回:actualname

如果文件名保留了您描述的结构,这将有效。