パスワード設定画面によくある画面のバリデーションをReact-Hook-Form(以下 rfc), Zodで実装します 実装する項目は以下の通りです 現在のパスワードと新しいパスワードが一致しているか 新しいパスワードと確認用のパスワードが一致しているか こちらの記事に、rfcとzodを利用した基本的なフォームの実装法を載せてあります! 導入についてはこちらをご覧ください 結論 .refineまたは.superRefineを使いましょう! const schema = z .object({ currentPassword: z.string().min(1, 'パスワードを入力してください'), newPassword: z .string() .min(8, 'パスワードは8文字以上で入力してください') .regex( /^(?=.*?[a-z])(?=.*?\d)[a-z\d]{8