Azure Data Flow提取动态前缀文件名日期及类right函数咨询
问题解答
1 Data Factory右截取功能实现
ADF的管道表达式与数据流表达式均未提供原生的RIGHT右截取函数,可通过substring配合length函数实现同等效果。
示例:截取字符串右侧3位的写法:
- 管道表达式:
@substring(yourString, sub(length(yourString), 3), 3) - 数据流表达式:
substring(yourString, length(yourString) - 3, 3)
2 从动态前缀的文件名中提取指定日期
针对[任意动态前缀]-[ISO8601时间串].parquet格式的文件名,以下两种Azure Data Flow表达式均可实现日期提取:
方案1:正则提取(推荐)
使用regexExtract直接匹配YYYY-MM-DD格式的日期,不受前缀变化影响:regexExtract(yourFileName, '\\d{4}-\\d{2}-\\d{2}', 0)
方案2:定位特殊字符截取
利用ISO时间串前缀固定为T的规律,定位到T的位置后向前截取10位即可:substring(yourFileName, indexOf(yourFileName, 'T') - 10, 10)
内容的提问来源于stack exchange,提问作者Dick ter Schiphorst
相关产品推荐
相关产品推荐

