目次
在很多情况下,您不希望在输入数据时使用半角片假名字符。
在 Salesforce 中,有些情况下您希望详细控制输入数据时可以使用的字符。
例如,以下情况。
- 不希望在客户名称或产品名称中使用半角片假名字符。
- 希望通过限制允许使用的符号来统一数据。
- 需要严格控制外部系统集成的字符类型。
在这种情况下,以自定义项目“注册名称 (RegistrationName__c) “ 为例、
创建一个输入规则,根据以下条件控制输入。
要求
- 禁止输入所有单字节片假名字符
- 符号只能用”.(句号)”和”-(连字符)”。
- 如果项目留空,不会产生错误(可选输入法)
组织字符类型
首先,整理正则表达式中每种字符类型的表达方式。
字符类型 | 正则表达式 | 说明 |
---|---|---|
半角片假名 | 和 P | Iueo… 包括混杂和半混杂标记 |
句号 ……………………. | . | 符号”.”指定 |
连字符 … | - | 指定符号”- |
点
半角片假名可与[wo-P]
一起指定。
只有 [句号] 和 [连字符] 符号可单独指定。
填写表格的输入规则
以下是填写表格的输入规则
IF(
ISBLANK(RegistrationName__c),.
FALSE,.
OR(
REGEX(RegistrationName__c, ".*[wo-p].*"),
NOT(REGEX(RegistrationName__c, "^[a-zA-Z0-9.-] $"))
)
)
分解并解释公式的含义
公式由三个主要部分组成。
1. 空白字段不会出错。
ISBLANK(RegistrationName__c)
- 如果项目为空白,则不适用输入规则。
- 此设置用于使项目成为可选输入项。
2. 禁止使用半角片假名字符。
REGEX(RegistrationName__c, ".*[wo-p].*")
- 如果输入中至少包含一个半宽片假名字符,则返回
TRUE
。 - 如果包含半角片假名字符,则返回 TRUE。
3. 检查未经授权的符号。
NOT(REGEX(RegistrationName__c, "^[a-zA-Z0-9.-] $"))
这部分检查 “输入的字符是否包含允许列表以外的内容“。
a-zA-Z0-9
→ 只允许字母数字字符。.
和-
→ 允许使用句点和连字符^
和$
→ 检查整个输入是否由该范围组成
因此,字母数字字符、句点或连字符以外的任何单个字符都会导致错误。
4. 使用 OR 条件进行汇总
OR( 条件 A, 条件 B )
- 如果包含半角片假名字符或非允许字符,则返回错误。
- 这样,**”禁止使用半角片假名 “+”只允许使用特定符号 “** 就能同时实现。
处理流程
最终处理按以下顺序进行
- 检查项目是否为空白。
→ 如果是空白,则不会出错。 - 检查是否包含半角片假名字符
→ 如果包含,则出错。 - 检查是否包含未经授权的符号或字符
→ 如果包含,则出错 - 如果出现上述任何一种情况,则显示错误。
输入示例和结果
输入值 | 判断 | 原因 |
---|---|---|
田中 | 确定 | 只有英文字母 |
田中-01 | OK(字母数字字符和连字符) | 字母数字字符和连字符 |
tanaka.01 | 字母数字字符和连字符 | 字母数字字符和句号 |
Tanaka.01 | NG | 包括半角片假名字符。 |
Tanaka_01 | NG | 不允许使用 _ 下划线 |
田中 | NG | 汉字字符超出允许范围 |
总结。
通过这个公式,我们取得了以下成果。
- 完全禁止使用半角片假名
- 符号只允许使用句号和连字符
- 如果项目为空白,则不会出错
在实际操作中,可将此公式应用于以下控件
- 添加允许使用的符号(如允许)
- 禁止使用日文和双字节字符
- 精确匹配特定字符串模式
使用正则表达式,您可以灵活地控制 Salesforce 上的输入内容、
使用正则表达式,您可以灵活地控制 Salesforce 上的输入内容,在保持数据质量的同时顺利实现系统集成。