如何在 SSIS 中提取子字符串

How to Extract Substring in SSIS

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

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

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

.csv 会一直在那里。

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

当然,您可以使用 SSIS 表达式实现。

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

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

使用 FileName = Any_thing_123.az_actualname.csv

测试

表达式returns:actualname

如果文件名保持您描述的结构,这将起作用。