0.0.20 • Published 3 years ago
@cmss/validate-rules v0.0.20
正则表达式
正则表达式校验规则与校验文案,具体见 CONF(前端需求规格说明)
使用方法
#安装
npm install --save @cmss/validate-rules 或者 yarn add @cmss/validate-rules
#使用
import { xxx } from '@cmss/validate-rules';
业务规则
规则命名 | 规则使用 | 校验提示命名 | 规则校验提示 | 应用场景 | 正则表达式 |
---|---|---|---|---|---|
REQUIRED_RULE | value === required | REQUIRED_TIP | 不能为空 | 通常用于非空校验 | 'required' |
COMMON_NAME_RULE | Regex | COMMON_NAME_TIP | 仅允许中文、字母开头,长度限制1~32个字符,可包含字母、数字、中文、中划线、下划线 | 常规的名称校验,例如:流程名称、项目组名称等有中文场景 | /^a-zA-Z\u4e00-\u9fa5{0,31}$/ |
VARS_NAME_RULE | Regex | VARS_NAME_TIP | 仅允许字母开头,长度限制1~32个字符,可包含字母、数字、中划线、下划线 | 变量名称、规范名称等无需中文场景 | /^a-zA-Z{0,31}$/ |
SHORT_NAME_RULE | Regex | SHORT_NAME_TIP | 仅允许字母开头,长度限制1~20个字符,可包含字母、数字、中划线、下划线 | 简短的用户名 | /^a-zA-Z\u4e00-\u9fa5{0,19}$/ |
LONG_NAME_RULE | Regex | LONG_NAME_TIP | 仅允许中文、字母开头,长度限制1~64个字符,可包含字母、数字、中文、中划线、下划线 | 可用于较长的名称限制,例如调度流程名称、监控流程名称等 | /^a-zA-Z\u4e00-\u9fa5{0,63}$/ |
SHORT_TAG_RULE | Regex | SHORT_TAG_TIP | 只能包含字母、数字、中文、下划线,且不能以下划线开头,长度限制1~10个字符 | 短标签名称 | /^a-zA-Z0-9\u4E00-\u9FA5{0,9}$/ |
TAG_RULE | Regex | TAG_TIP | 只能包含字母、数字、中文、下划线,且不能以下划线开头,长度限制2~32个字符 | 限定 2-32 字符的长标签名称 | /^a-zA-Z0-9\u4E00-\u9FA5{1,31}$/ |
TABLE_ALIAS_RULE | Regex | TABLE_ALIAS_TIP | 只能包含字母、数字、中文、下划线,且不能以下划线开头,长度限制1~200个字符 | 表的别名 | /^a-zA-Z0-9\u4E00-\u9FA5{0,199}$/ |
LENGTH_250_RULE | Length | LENGTH_250_TIP | 不超过250个字符 | 无固定限制的描述文本,通常用于 TextArea | '250' |
DESC_LIMIT_RULE | Regex | DESC_LIMIT_TIP | 只能包含字母、数字、中文、中划线、下划线,长度限制4~64个字符 | 有固定限制的描述文本 | /^\u4e00-\u9fa5a-zA-Z0-9_-{4,64}$/ |
COMMON_VALUE_RULE | Regex | COMMON_VALUE_TIP | 只能包含字母、数字、中文、下划线 | 常见的值限制,例如数据标签的值 | /^\u4E00-\u9FA5A-Za-z0-9_+$/ |
通用规则
规则命名 | 规则使用 | 校验提示命名 | 规则校验提示 | 应用场景 | 正则表达式 | |||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
IPV4_RULE | Regex | IPV4_TIP | 请输入正确IPV4地址 | IPV4校验 | /^(?:(?:250-5 | 20-4 | 01?0-9?).){3}(?:250-5 | 20-4 | 01?0-9?)$/ | |||||||||||||||||||||||||
IPV6_RULE | Regex | IPV6_TIP | 请输入正确IPV6地址 | IPV6校验 | /^(((0-9A-Fa-f{1,4}:){7}0-9A-Fa-f{1,4}) | ((0-9A-Fa-f{1,4}:){6}:0-9A-Fa-f{1,4}) | ((0-9A-Fa-f{1,4}:){5}:(0-9A-Fa-f{1,4}:)?0-9A-Fa-f{1,4}) | ((0-9A-Fa-f{1,4}:){4}:(0-9A-Fa-f{1,4}:){0,2}0-9A-Fa-f{1,4}) | ((0-9A-Fa-f{1,4}:){3}:(0-9A-Fa-f{1,4}:){0,3}0-9A-Fa-f{1,4}) | ((0-9A-Fa-f{1,4}:){2}:(0-9A-Fa-f{1,4}:){0,4}0-9A-Fa-f{1,4}) | ((0-9A-Fa-f{1,4}:){6}((\b((250-5) | (1\d{2}) | (20-4\d) | (\d{1,2}))\b).){3}(\b((250-5) | (1\d{2}) | (20-4\d) | (\d{1,2}))\b)) | ((0-9A-Fa-f{1,4}:){0,5}:((\b((250-5) | (1\d{2}) | (20-4\d) | (\d{1,2}))\b).){3}(\b((250-5) | (1\d{2}) | (20-4\d) | (\d{1,2}))\b)) | (::(0-9A-Fa-f{1,4}:){0,5}((\b((250-5) | (1\d{2}) | (20-4\d) | (\d{1,2}))\b).){3}(\b((250-5) | (1\d{2}) | (20-4\d) | (\d{1,2}))\b)) | (0-9A-Fa-f{1,4}::(0-9A-Fa-f{1,4}:){0,5}0-9A-Fa-f{1,4}) | (::(0-9A-Fa-f{1,4}:){0,6}0-9A-Fa-f{1,4}) | ((0-9A-Fa-f{1,4}:){1,7}:))$/i |
EMAIL_RULE | Regex | EMAIL_TIP | 请输入正确邮箱地址 | 邮箱 | /^\w-+(.\w-+)*@\w-+(.\w-+)+$/ | |||||||||||||||||||||||||||||
PHONE_RULE | Regex | PHON_TIP | 请输入正确手机号 | 11 位手机号 | /^10-9{10}$/ | |||||||||||||||||||||||||||||
PORT_RULE | Regex | PORT_TIP | 请输入正确的端口号 | 端口号 | /^(0-9 | 1-9\d{1,3} | 1-5\d{4} | 60-5{2}0-3)$/ | ||||||||||||||||||||||||||
VERSION_RULE | Regex | VERSION_TIP | 仅允许字母、数字开头,长度限制1~6个字符,可包含字母、数字、小数点,且不允许以小数点结尾 | 版本号,例如 1.1.1 | /^a-zA-Z0-9?$/ | |||||||||||||||||||||||||||||
NZPI_RULE | Regex | NZPI_TIP | 请填写非0正整数 | 非0正整数 | /^+?1-9*$/ | |||||||||||||||||||||||||||||
PI_RULE | Regex | PI_TIP | 请填写正整数 | 正整数 | /^\d+$/ | |||||||||||||||||||||||||||||
undefined | Regex | LINE_TIP | 仅支持数字(正整数),长度为1~100000 | 正整数 | undefined | |||||||||||||||||||||||||||||
INTEGER_RULE | Regex | INTEGER_TIP | 请填写整数 | 整数 | /^-?\d+$/ | |||||||||||||||||||||||||||||
IE_KERNEL_RULE | Regex | IE_KERNEL_TIP | 浏览器为 IE | IE浏览器识别 | /msie\s | trident\/ | edge\//i | |||||||||||||||||||||||||||
undefined | Regex | VARS_VALUE_TIP | 禁止全空格 | 禁止全空格 | undefined |
ETL 规则
规则命名 | 规则使用 | 校验提示命名 | 规则校验提示 | 应用场景 | 正则表达式 | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
ETL_REF_NAME_RULE | Regex | ETL_REF_NAME_TIP | 请确认填写格式 | 引用依赖 | /\${\S+}/ | |||||||
ETL_CUSTOM_FUNC_RULE | Regex | ETL_CUSTOM_FUNC_TIP | 可包含字母、数字、中文、中划线、下划线 | 自定义函数名称 | /^0-9A-Za-z_-\u4e00-\u9fa5*$/ | |||||||
DATETIME_SS_RULE | Regex | DATETIME_SS_TIP | 请按 yyyyMMddHHmmss 格式正确填写 | yyyyMMddHHmmss | /^1-9\d{3}(01-9 | 10-2)(01-9 | 1-2 | 30-1)(20 | 21 | 22 | 23 | 0-1\d)0-5\d0-5\d$/ |
DATETIME_MI_RULE | Regex | DATETIME_MI_TIP | 请按 yyyyMMddHHmm 格式正确填写 | yyyyMMddHHmm | /^1-9\d{3}(01-9 | 10-2)(01-9 | 1-2 | 30-1)(20 | 21 | 22 | 23 | 0-1\d)0-5\d$/ |
DATETIME_HH_RULE | Regex | DATETIME_HH_TIP | 请按 yyyyMMddHH 格式正确填写 | yyyyMMddHH | /^1-9\d{3}(01-9 | 10-2)(01-9 | 1-2 | 30-1)(20 | 21 | 22 | 23 | 0-1\d)$/ |
DATETIME_DD_RULE | Regex | DATETIME_DD_TIP | 请按 yyyyMMdd 格式正确填写 | yyyyMMdd | /^1-9\d{3}(01-9 | 10-2)(01-9 | 1-2 | 30-1)$/ | ||||
DATETIME_MM_RULE | Regex | DATETIME_MM_TIP | 请按 yyyyMM 格式正确填写 | yyyyMM | /^1-9\d{3}(01-9 | 10-2)$/ |
HIVE 规则
规则命名 | 规则使用 | 校验提示命名 | 规则校验提示 | 应用场景 | 正则表达式 |
---|---|---|---|---|---|
HIVE_TABLE_NAME_RULE | Regex | HIVE_TABLE_NAME_TIP | 只能包含字母、数字、下划线,且不能以下划线开头,不能是纯数字,长度限制1~128个字符 | 表名/表字段 | /^(?!\d+$)(?!^_)\w{1,127}$/ |
HIVE_TABLE_ROW_RULE | Regex | HIVE_TABLE_ROW_TIP | 只能包含字母、数字、中文、下划线,且不能以下划线开头,长度限制1~1024字符 | 列信息 | /^a-zA-Z\u4e00-\u9fa5{0,1023}$/ |
HIVE 规则
规则命名 | 规则使用 | 校验提示命名 | 规则校验提示 | 应用场景 | 正则表达式 |
---|---|---|---|---|---|
KAFKA_SASLNAME_RULE | Regex | KAFKA_SASLNAME_TIP | 仅允许小写字母开头,长度限制4~64个字符,可包含字母,数字、中划线、下划线 | sasl 用户名 | /^a-z{3,63}$/ |
KAFKA_TOPIC_RULE | Regex | KAFKA_TOPIC_TIP | 长度为3-128个字符,可以包含字母、数字、中划线或者下划线,不能包含其他的特殊字符 | kafka Topic | /^0-9A-Za-z-_{3,127}$/ |
KAFKA_GROUP_RULE | Regex | KAFKA_GROUP_TIP | 长度为3-128个字符,可以包含字母、数字、中划线或者下划线,不能包含其他的特殊字符 | kafka Group | /^0-9A-Za-z-_{3,127}$/ |
MYSQL 规则
规则命名 | 规则使用 | 校验提示命名 | 规则校验提示 | 应用场景 | 正则表达式 |
---|---|---|---|---|---|
MYSQL_LINK_RULE | Regex | MYSQL_LINK_TIP | 请填写正确的连接地址 | 连接地址校验 | /(jdbc:mysql):\/\/(\w.+\/?)\S*/ |
MYSQL_NAME_RULE | Regex | MYSQL_NAME_TIP | 仅允许字母开头,长度限制2~64个字符,可包含字母、数字、中划线、下划线,以字母或数字结尾 | 名称校验 | /^a-zA-Z{0,62}a-zA-Z0-9$/ |
MYSQL_DB_NAME_RULE | Regex | MYSQL_DB_NAME_TIP | 仅允许小写字母开头,长度限制2~64个字符,可包含小写字母、数字、下划线,以小写字母或数字结尾 | 数据库名称校验 | /^a-z{0,62}a-z0-9$/ |
MYSQL_ACCOUNT_RULE | Regex | MYSQL_ACCOUNT_TIP | 仅允许小写字母开头,长度限制2~64个字符,可包含小写字母、数字、下划线,以小写字母或数字结尾 | 账号管理名称校验 | /^a-z{0,62}a-z0-9$/ |
Onest (对象存储)规则
规则命名 | 规则使用 | 校验提示命名 | 规则校验提示 | 应用场景 | 正则表达式 | |
---|---|---|---|---|---|---|
ONEST_ACCESSKEY_RULE | Regex | ONEST_ACCESSKEY_TIP | 可包含字母、数字,长度限制1~128个字符 | accessKey | /^a-zA-Z0-9{0,127}$/ | |
ONEST_SECRETKEY_RULE | Regex | ONEST_SECRETKEY_TIP | 可包含字母、数字,长度限制1~128个字符 | secretkey | /^a-zA-Z0-9{0,127}$/ | |
ONEST_LINK_RULE | Regex | ONEST_LINK_TIP | 请填写正确的连接URL | 连接 URL | /(http | https):\/\/(\w.+\/?)\S*/ |
ONEST_DIR_RULE | Regex | ONEST_DIR_TIP | 仅允许字母开头,长度限制4~64个字符,可包含字母、数字、下划线 | Onest 文件夹名称 | /^A-Za-z{3,63}$/ | |
ONEST_BUCKET_RULE | Regex | ONEST_BUCKET_TIP | 只能包含小写字母、数字、中划线,且不能以中划线开头和结尾,长度限制3~64个字符 | 桶名称 | /^a-z0-9{0,61}a-z0-9$/ |
其他不便于分类的规则
规则命名 | 规则使用 | 校验提示命名 | 规则校验提示 | 应用场景 | 正则表达式 |
---|---|---|---|---|---|
POLICY_NAME_RULE | Regex | POLICY_NAME_TIP | 长度为4-64个字符,必须以字母开头,可以包含字母、数字或者中划线,不能包含其他的特殊字符 | 访问策略名称限制 | /^a-zA-Z{3,63}$/ |
NOTNULL_VARS_VALUE_RULE | Regex | NOTNULL_VARS_VALUE_TIP | 长度为4-64个字符,必须以字母开头,可以包含字母、数字或者中划线,不能包含其他的特殊字符 | 非空变量 | /^(?!(\s+$))/ |
PATH_VALUE_RULE | Regex | PATH_VALUE_TIP | 仅允许/开头,长度限制1~200 个字符,可包含字母、数字、中划线、下划线,如/use | 路径 | /^(\/\w,-*){1,200}$/ |
COMMON_PASSWORD_RULE | Regex | COMMON_PASSWORD_TIP | 至少8位以上字符,且至少包含1个大写字母,1个小写字母和1个数字 | 常规的密码校验 | /^(?=.a-z)(?=.A-Z)(?=.*\d)^{8,}$/ |
API_GROUPNAME_RULE | Regex | API_GROUPNAME_TIP | 仅允许中文、字母开头,长度限制4~50 个字符,可包含字母、数字、中文、下划线 | /^a-zA-Z\u4e00-\u9fa5{3,49}$/ | |
CONNECOTR_NAME_RULLE | Regex | CONNECOTR_NAME_TIP | 仅允许字母开头,长度限制4~32个字符,仅包含字母、数字、中划线或下划线 | /^a-zA-Z{3,31}$/ | |
SCHEMA_FIELD_RULE | Regex | SCHEMA_FIELD_TIP | 长度限制为1~64个字符,只允许包含大小写字母、数字、下划线, 首字母不能是数字 | /^A-Za-z_{0,63}$/ |
0.0.20
3 years ago
0.0.18
3 years ago
0.0.19
3 years ago
0.0.17
3 years ago
0.0.16
3 years ago
0.0.15
3 years ago
0.0.14
3 years ago
0.0.12
3 years ago
0.0.13
3 years ago
0.0.11
3 years ago
0.0.10
3 years ago
0.0.9
3 years ago
0.0.8
3 years ago
0.0.7
3 years ago
0.0.6
3 years ago
0.0.5
3 years ago
0.0.4
4 years ago
0.0.3
4 years ago
0.0.2
4 years ago
0.0.1
4 years ago