从文件名SSIS表达式中提取子字符串

从文件名SSIS表达式中提取子字符串,ssis,ssis-2012,Ssis,Ssis 2012,我有一个标准,需要从文件名中提取年份 文件名将按以下方式显示 FILE.TEST.ASSGN_2012_Retro_Year Result should be 2012 FILE.TEST.ASSGN_2013_Retro_Year Result should be 2013 FILE.TEST.ASSGN_2014_Retro_Year Result should be 2014 我正在将文件名提取到名为FileName的变量中 我在派生列中尝试了以下表达式,但没有成功: SUB

我有一个标准,需要从文件名中提取年份

文件名将按以下方式显示

FILE.TEST.ASSGN_2012_Retro_Year   Result should be 2012
FILE.TEST.ASSGN_2013_Retro_Year   Result should be 2013
FILE.TEST.ASSGN_2014_Retro_Year   Result should be 2014
我正在将文件名提取到名为FileName的变量中

我在派生列中尝试了以下表达式,但没有成功:

SUBSTRING(@[User::FileName], FINDSTRING(@[User::RealFileName], "HASSN_",1,4))

您当前的表达式中有几个拼写错误和不正确的用法

尝试以下表达式。它起作用了

子字符串@[User::RealFileName],FINDSTRING@[User::RealFileName],ASSGN,1+6,4

在我的测试中,我创建了一个名为RealFileName的变量,并将第一个测试值FILE.test.ASSGN_2012_Retro_Year分配给它。 然后,我创建了一个名为FileName的变量,并为其指定了表达式

子字符串@[User::RealFileName],FINDSTRING@[User::RealFileName],ASSGN,1+6,4

请参见此测试值的评估值表达式显示的内容


您当前的表达式中有几个拼写错误和不正确的用法

尝试以下表达式。它起作用了

子字符串@[User::RealFileName],FINDSTRING@[User::RealFileName],ASSGN,1+6,4

在我的测试中,我创建了一个名为RealFileName的变量,并将第一个测试值FILE.test.ASSGN_2012_Retro_Year分配给它。 然后,我创建了一个名为FileName的变量,并为其指定了表达式

子字符串@[User::RealFileName],FINDSTRING@[User::RealFileName],ASSGN,1+6,4

请参见此测试值的评估值表达式显示的内容