正则校验职位名称所有单词首字母大写的实现问题求助
正则规则调整方案
原规则问题
你当前的正则仅要求第一个字符为大写字母,后续内容没有对单词首字母做限制,因此无法校验第二个及之后单词的首字母大写格式。
调整后校验规则
直接替换原REGEX函数中的正则表达式即可:
NOT(ISBLANK(Title)), NOT(REGEX(Title, "^[A-Z][']?[a-z!£$%&()@~#]*(?: [A-Z][']?[a-z!£$%&()@~#]*)*$"))
正则规则说明
^匹配字符串开头,避免开头出现不符合规则的字符- 每个单词统一遵循
[A-Z][']?[a-z!£$%&()@~#]*规则:- 首字符必须为大写英文字母
[A-Z] - 支持撇号开头的特殊姓氏/名称格式
[']?,比如O'Conner - 首字母后仅允许小写英文字母及你原规则中指定的特殊符号
- 首字符必须为大写英文字母
(?: [A-Z][']?[a-z!£$%&()@~#]*)*是非捕获组,匹配0个及以上用空格分隔的后续单词,支持1个、2个甚至多个单词的职位名称$匹配字符串结尾,避免末尾出现不符合规则的字符
自定义扩展提示
如果需要支持更多格式,直接调整中括号内的允许字符即可:
- 需要支持数字:在中括号内加入
0-9 - 需要支持连字符(如
Vice-President):在中括号末尾加入- - 需要支持其他特殊符号,直接将符号添加到中括号内即可
内容的提问来源于stack exchange,提问作者Gau
相关产品推荐
相关产品推荐

