Yup 是一个用于 JavaScript 和 TypeScript 的对象模式验证库。它允许你定义一个模式,并使用该模式来验证对象的结构和值。正则表达式(regex)是一种强大的文本处理工具,可以用来匹配、查找、替换或分割字符串。
在这个场景中,我们主要关注的是 Yup 的 string
类型和正则表达式的使用。
当你需要验证一个字符串不是特定的单词(不区分大小写)时,可以使用 Yup 和正则表达式来实现。
假设我们要验证一个字符串不是 "example" 这个单词(不区分大小写),可以使用以下代码:
import * as yup from 'yup';
const schema = yup.object().shape({
myString: yup.string().notOneOf(['example'], 'Cannot be the word "example"').required(),
});
const testString = 'Example';
schema.validate({ myString: testString })
.then(() => {
console.log('Validation passed');
})
.catch((err) => {
console.error(err.errors);
});
yup.object().shape
定义一个对象模式,并在其中定义 myString
字段的验证规则。notOneOf
方法:yup.string().notOneOf(['example'], 'Cannot be the word "example"')
表示 myString
不能是 "example" 这个单词(不区分大小写)。schema.validate
方法验证字符串是否符合定义的模式。通过这种方式,你可以轻松地验证一个字符串不是特定的单词(不区分大小写),并且可以灵活地扩展其他验证规则。
领取专属 10元无门槛券
手把手带您无忧上云