如何编写允许指定字符的正则表达式?(附React Hook Form示例)
修正React Hook Form文本框的正则验证规则
你需要调整pattern中的正则表达式,使其允许指定的字符集合。以下是修正后的完整代码:
<textarea id="comments" placeholder='comments' {...register("comments", { required: true, minLength: { value: 5, message: "最少输入5个字符" }, pattern: { value: /^[a-z0-9\s"?!,.-@&]+$/i, message: "支持字母、数字、空格、\"、?、!、逗号、连字符、点、@和&" } })} > </textarea>
正则表达式说明:
/^...$/i:^和$确保整个输入内容都符合规则,i标志忽略字母大小写[a-z0-9\s"?!,.-@&]:允许的字符集合,包含:a-z0-9:大小写字母与数字\s:空格字符"?!,.-@&:你指定的所有特殊字符(连字符放在集合末尾,避免被解析为字符范围)
+:要求输入至少包含一个符合规则的字符
另外修正了错误提示消息的格式,确保双引号显示正常。
内容的提问来源于stack exchange,提问作者soccerway
相关产品推荐
相关产品推荐

