js-确定输入字符串是否有效

 // 给定一个仅包含字符 '(', ')', '{', '}', '[' 和 ']' 的字符串 s,
    // 确定输入字符串是否有效。
    // 输入字符串在以下情况下有效: 
      // Input: s = "()[]{}"
    // Output: true
    // Input: s = "(]"
    // Output: false 
    // Input: s = "([)]"
    // Output: false
    // Input: s = "{[]}"
    // Output: true
  // 思想就是当遍历到某一个字符的时候,查询此字符在allL 中的位置left,
    // 从而得知在allR中的位置right,
    // 之后判断在arr数组中最后一个字符是否等于right,
    // 如果等于则说明是成对的,将arr中的这个字符抛出,继续遍历
    // 最后判断arr是否为空,空的话说明都是成对的

    // arr: 用于存储字符。
    // left当前遍历的字符在allL中的位置
    // right当前遍历的字符在allR中的位置

在这里插入图片描述
在这里插入图片描述

    如有不对,请大佬赐教
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 答案:用户名:可以使用正则表达式来验证:/^[a-zA-Z]\w{3,15}$/;密码:可以使用正则表达式来验证:/^[a-zA-Z]\w{5,9}$/;邮箱地址:可以使用正则表达式来验证:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;手机号码:可以使用正则表达式来验证:/^1[3|4|5|6|7|8|9][0-9]\d{4,8}$/。 ### 回答2: 以下是一个用于JS表单验证的代码示例: ```html <!DOCTYPE html> <html> <head> <title>表单验证</title> <script> function validateForm() { var username = document.forms["myForm"]["username"].value; var password = document.forms["myForm"]["password"].value; var confirmPassword = document.forms["myForm"]["confirmPassword"].value; var email = document.forms["myForm"]["email"].value; var phoneNumber = document.forms["myForm"]["phoneNumber"].value; // 验证用户名 var usernameRegex = /^[a-zA-Z]\w{3,15}$/; if (!username.match(usernameRegex)) { alert("用户名首位为字母的4-16位字符串!"); return false; } // 验证密码 var passwordRegex = /^[a-zA-Z]\w{4,8}[a-zA-Z]$/; if (!password.match(passwordRegex)) { alert("密码首末位为字母的6-10位字符串!"); return false; } // 验证确认密码 if (password !== confirmPassword) { alert("确认密码与密码不一致!"); return false; } // 验证邮箱地址 var emailRegex = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/; if (!email.match(emailRegex)) { alert("请输入合法的邮箱地址格式!"); return false; } // 验证手机号码 var phoneNumberRegex = /^1[3456789]\d{9}$/; if (!phoneNumber.match(phoneNumberRegex)) { alert("请输入合法的手机号码!"); return false; } } </script> </head> <body> <form name="myForm" onsubmit="return validateForm()"> <label for="username">用户名:</label> <input type="text" name="username" id="username" required><br> <label for="password">密码:</label> <input type="password" name="password" id="password" required><br> <label for="confirmPassword">确认密码:</label> <input type="password" name="confirmPassword" id="confirmPassword" required><br> <label for="email">邮箱地址:</label> <input type="email" name="email" id="email" required><br> <label for="phoneNumber">手机号码:</label> <input type="tel" name="phoneNumber" id="phoneNumber" required><br> <input type="submit" value="提交"> </form> </body> </html> ``` 以上代码会在用户提交表单时进行相应的验证。 - 首先,通过正则表达式验证用户名、密码、邮箱地址和手机号码的格式是否符合要求。 - 然后,使用`match()`函数将表单中用户输入的值与相应的正则表达式进行匹配。 - 如果匹配失败,将弹出相应的警告信息并返回`false`。 - 如果所有验证都通过,则正常提交表单。 - 请注意在表单标签中的`onsubmit`属性,它调用了`validateForm()`函数,这样才能在提交表单时执行相应的验证。 ### 回答3: 以下是一个简单的js表单验证代码,满足要求: ```html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>表单验证</title> <script> function validateForm() { var username = document.forms["myForm"]["username"].value; var password = document.forms["myForm"]["password"].value; var confirmPassword = document.forms["myForm"]["confirmPassword"].value; var email = document.forms["myForm"]["email"].value; var phone = document.forms["myForm"]["phone"].value; if (!/^[A-Za-z][A-Za-z0-9]{3,15}$/.test(username)) { alert("用户名格式不正确!"); return false; } if (!/^[A-Za-z][A-Za-z0-9]{4,8}[A-Za-z]$/.test(password)) { alert("密码格式不正确!"); return false; } if (password !== confirmPassword) { alert("密码和确认密码不一致!"); return false; } if (!/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/.test(email)) { alert("邮箱地址格式不正确!"); return false; } if (!/^1[0-9]{10}$/.test(phone)) { alert("手机号码格式不正确!"); return false; } } </script> </head> <body> <form name="myForm" onsubmit="return validateForm()" method="post"> <label for="username">用户名:</label> <input type="text" id="username" name="username" required><br> <label for="password">密码:</label> <input type="password" id="password" name="password" required><br> <label for="confirmPassword">确认密码:</label> <input type="password" id="confirmPassword" name="confirmPassword" required><br> <label for="email">邮箱地址:</label> <input type="email" id="email" name="email" required><br> <label for="phone">手机号码:</label> <input type="text" id="phone" name="phone" required><br> <input type="submit" value="提交"> </form> </body> </html> ``` 该代码会检查用户输入的表单信息是否符合要求,如果不满足要求会弹出相应的提示框并阻止表单提交。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值