# 数据清洗组件使用说明
# 组件说明
数据清洗组件用于对数据进行审查和校验的过程,并根据规则纠正数据中的错误。包括:脱敏规则、转换规则、加密规则、解密规则、生成数据规则、自定义清洗规则。
# 配置项说明
| 配置名称 | 数据类型 | 是否必须 | 默认值 | 描述 |
|---|---|---|---|---|
| 节点名称 | String | 是 | - | 当前创建的节点名称,由用户自定义且不可为空。命名可包含字母、数字、下划线。 |
| 字段名称 | String | 是 | - | 从前置步骤输出流中选择字段名称。 |
| 清洗规则 | String | 是 | - | 配置的清洗规则列表。 |
| 操作 | - | 否 | - | 对规则进行添加、上移、下移、删除等操作。 |
# 清洗规则说明
# 1、解密规则:
| 规则名称 | 规则描述 | 规则示例 |
|---|---|---|
| AES解密 | 对数据进行AES解密,需要密钥secretKey,密钥为16位数字(默认密钥:1234567890123456,默认模式:ECB,默认填充:pkcs) | 原始格式: 输入类型:字符串,字段值: "M5RMO9SiEldBeoWOJ/+PAw==" 目标格式: 输出类型:字符串,字段值: "12345" |
| Base64解密 | 对数据进行Base64解密 | 原始格式: 输入类型:字符串,字段值: "MTIzNDU=" 目标格式: 输出类型:字符串,字段值: "12345" |
| DES解密 | 对数据进行DES解密,需要密钥secretKey,密钥为8位数字(默认密钥:12345678,默认模式:ECB,默认填充:pkcs) | 原始格式: 输入类型:字符串,字段值: "AGgKdx/Qic8=" 目标格式: 输出类型:字符串,字段值: "12345" |
# 2、加密规则
| 规则名称 | 规则描述 | 规则示例 |
|---|---|---|
| AES加密 | 对数据进行AES加密,需要密钥secretKey,密钥为16位数字(默认密钥:1234567890123456,默认模式:ECB,默认填充:pkcs) | 原始格式: 输入类型:字符串,字段值: "12345" 目标格式: 输出类型:字符串,字段值: "M5RMO9SiEldBeoWOJ/+PAw==" |
| Base64加密 | 对数据进行Base64加密 | 原始格式: 输入类型:字符串,字段值: "12345" 目标格式: 输出类型:字符串,字段值: "MTIzNDU=" |
| DES加密 | 对数据进行DES加密,需要密钥secretKey,密钥为8位数字(默认密钥:12345678,默认模式:ECB,默认填充:pkcs) | 原始格式: 输入类型:字符串,字段值: "12345" 目标格式: 输出类型:字符串,字段值: "AGgKdx/Qic8=" |
| MD5加密 | 对数据进行MD5加密 | 原始格式: 输入类型:字符串,字段值: "12345" 目标格式: 输出类型:字符串,字段值: "827ccb0eea8a706c4c34a16891f84e7b" |
# 3、脱敏规则
| 规则名称 | 规则描述 | 规则示例 |
|---|---|---|
| 地址脱敏 | 实现地址脱敏至第二级 | 原始格式: 输入类型:字符串,字段值: "北京市海淀区中关村街道" 目标格式: 输出类型:字符串,字段值: "北京市海淀区*****" |
| 车牌号脱敏 | 只保留前2后3位 | 原始格式: 输入类型:字符串,字段值: "陕A65KW3" 目标格式: 输出类型:字符串,字段值: "陕A***KW3" |
| 卡号脱敏 | 只展示前3后4位 | 原始格式: 输入类型:字符串,字段值: "30010019990101123X" 目标格式: 输出类型:字符串,字段值: "300***********123X" |
| 邮箱脱敏 | 只展示第一位和邮箱域名 | 原始格式: 输入类型:字符串,字段值: "12345678@163.com" 目标格式: 输出类型:字符串,字段值: "1****@163.com" |
| 姓名脱敏 | 保留姓名第一位 | 原始格式: 输入类型:字符串,字段值: "张三" 目标格式: 输出类型:字符串,字段值: "张*" |
| 证件号码脱敏 | 只展示前3后4位 | 原始格式: 输入类型:字符串,字段值: "610203199109120975" 目标格式: 输出类型:字符串,字段值: "610***********0975" |
| 手机号码脱敏 | 只展示前3后4位 | 原始格式: 输入类型:字符串,字段值: "18909231098" 目标格式: 输出类型:字符串,字段值: "189****1098" |
| 通用脱敏 | 根据输入的字符位置进行脱敏,起始位置为1 | 原始格式: 输入类型:字符串,字段值: "这是一个通用脱敏规则" 目标格式: 输出类型:字符串,字段值: "这****用脱敏规则"(假设startIndex=2,endIndex=5,mask=#) |
# 4、转换规则
| 规则名称 | 规则描述 | 规则示例 |
|---|---|---|
| 清除空格符 | 清除所有空格符 | 原始格式: 输入类型:字符串,字段值: "包含空格 的 字符串" 目标格式: 输出类型:字符串,字段值: "包含空格的字符串" |
| 日期格式化 | 将日期转化成指定格式的字符串 | 原始格式: 输入类型:日期,字段值: "Fri Jul 26 15:47:12 CST 2024" 目标格式: 输出类型:字符串,字段值: "2024-07-26 15:47:12"(假设默认格式: yyyy-MM-dd HH:mm:ss) |
| 字段赋值 | 将选中字段的值赋值给当前字段,且字段类型不变 | 原始格式: 输入类型:任意类型,字段值: 任意值 选择字段类型:字符串,字段值: "123456" 目标格式: 输出类型:字符串,字段值: "123456" |
| 字段拼接 | 将多个字段的值按顺序拼成字符串赋给当前字段,且当前字段输出格式为字符串 | 原始格式: 输入类型:任意类型,字段值: 任意值 字段1类型:字符串,字段值: "123456" 字段2类型:字符串,字段值: "aabbcc" 目标格式: 输出类型:字符串,字段值:"123456aabbcc' |
| 字段设置常量 | 将字段值设置为字符串常量 | 原始格式: 输入类型:任意类型,字段值: 任意值 目标格式: 输出类型:字符串,字段值: "12345"(假设常量设置为:12345) |
| 删除字段 | 删除当前字段 | 原始格式: 输入类型:任意类型,字段值: 任意值 目标格式: 输出类型:无,字段值: 无 |
| 字段改名 | 字段改名 | 原始格式: 字段名myName,输入类型:任意类型,字段值: 任意值 目标格式: 字段名reName(假设重名成:reName),输出类型:任意类型,字段值: 任意值 |
| 字母转小写 | 字母大写转小写 | 原始格式: 输入类型:字符串,字段值: "JOHN" 目标格式: 输出类型:字符串,字段值: "john" |
| 字母转大写 | 字母小写转大写 | 原始格式: 输入类型:字符串,字段值: "john" 目标格式: 输出类型:字符串,字段值: "JOHN" |
| 金额大写转小写 | 大写金额转小写数字 | 原始格式: 输入类型:字符串,字段值: "壹仟零贰元整" 目标格式: 输出类型:字符串,字段值: "1002" |
| 金额小写转大写 | 金额数字转大写数字 | 原始格式: 输入类型:字符串,字段值: "1200.43" 目标格式: 输出类型:字符串,字段值: "壹仟贰佰元肆角叁分" |
| 删除字符串中的数字 | 删除字符串中的数字 | 原始格式: 输入类型:字符串,字段值: "dyn20240703" 目标格式: 输出类型:字符串,字段值: "dyn" |
| 替换字符串 | 替换字符为设定字符,支持正则匹配替换 | 原始格式: 输入类型:字符串,字段值: "测试字符串,是一些数字12345和字母abcde"(假设正则表达式:\d+,替换字符:&) 目标格式: 输出类型:字符串,字段值: "测试字符串,是一些数字&和字母abcde" |
| 字符串截取 | 根据指定的起始位置和终止位置,截取字符串,起始位置为0 | 原始格式: 输入类型:字符串,字段值: "字符串截取" 目标格式: 输出类型:字符串,字段值: "符串截"(假设startIndex=1,endInd |
| 截取符号之后字符 | 截取符号之后字符 | 原始格式: 输入类型:字符串,字段值: "dyn#20240703" 目标格式: 输出类型:字符串,字段值: "20240703"(假设截取字符串为:#) |
| 截取符号之前字符 | 截取符号之前字符 | 原始格式: 输入类型:字符串,字段值: "dyn#20240703" 目标格式: 输出类型:字符串,字段值: "dyn"(假设截取字符串为:#) |
| 字符串转日期 | 将字符串类型转换为日期类型 | 原始格式: 输入类型:字符串,字段值: "2024-07-26 15:47:12"(设置时间格式: yyyy-MM-dd HH:mm:ss) 目标格式: 输出类型:日期,字段值: "Fri Jul 26 15:47:12 CST 2024" |
| 字符串转为数字 | 字符串转为数字 | 原始格式: 输入类型:字符串,字段值: "20240703" 目标格式: 输出类型:数字,字段值: 20240703 |
| 去除两端空格符 | 清除两端空格 | 原始格式: 输入类型:字符串,字段值: " 20240703 " 目标格式: 输出类型:数字,字段值: "20240703" |
| 时间戳转日期 | 时间戳转为日期类型 | 原始格式: 输入类型:时间戳,字段值: "1635176887000" 目标格式: 输出类型:日期,字段值: "Mon Oct 25 23:48:07 CST 2021" |
# 5、生成数据规则
| 规则名称 | 规则描述 | 规则示例 |
|---|---|---|
| 获取当前时间 | 获取当前时间 | 原始格式: 输入类型:任意,字段值: 任意值 目标格式: 输出类型:日期,字段值: "Wed Jul 03 14:23:58 CST 2024" |
| 生成UUID | 生成UUID | 原始格式: 输入类型:任意,字段值: 任意值 目标格式: 输出类型:字符串,字段值: "e0cd98ad-b136-4188-b963-1ed8132f97b5" |