西岐VS朝歌 2022-12-11 19:37 采纳率: 75%
浏览 19
已结题

用JS完成完整的网站登录页面

怎么限制邮箱地址中有且只有一个@字符,字符后面必须有域名,但小数点不能在最后面且不能连着写。
验证码的JS怎么表达?

img

有人会写JS部分吗?
我只会HTML和CSS部分。

  • 写回答

1条回答 默认 最新

  • m0_57781768 2022-12-11 20:01
    关注

    可以使用 JavaScript 的正则表达式来实现这个需求。正则表达式中的模式 /^[^@]+@[^@]+.[^@.]+$/ 可以匹配符合要求的邮箱地址。
    具体地,这个正则表达式由三部分组成:

    ^[^@]+:匹配字符串开头到第一个 @ 字符之间的内容,由于 @ 字符前面不能有 @ 字符,因此这部分使用了 [^@] 来匹配任意非 @ 字符。
    @:匹配第一个 @ 字符。
    [^@]+.[^@.]+$:匹配 @ 字符后面的域名,由于小数点不能在最后面且不能连着写,因此这部分使用了 [^@.]+ 来匹配任意非 @ 和 . 字符的一个或多个字符,并在最后加上 $ 来匹配字符串的结尾。
    下面是一个示例,它使用正则表达式来验证一个邮箱地址是否符合要求:

    function isValidEmail(email) {
      // 匹配邮箱地址的正则表达式
      var pattern = /^[^@]+@[^@]+\.[^@\.]+$/;
    
      // 如果邮箱地址符合正则表达式的模式,则返回 true,否则返回 false
      return pattern.test(email);
    }
    
    // 示例
    console.log(isValidEmail("name@domain.com")); // true
    console.log(isValidEmail("name@domain")); // false
    console.log(isValidEmail("name@domain.com")); // true
    console.log(isValidEmail("name@domain")); // false
    console.log(isValidEmail("name@domain.")); // false
    console.log(isValidEmail("name@.domain.com")); // false
    console.log(isValidEmail("@domain.com")); // false
    

    上面的代码中,第一个和第二个示例的邮箱地址符合要求,因此返回 true;第三个、第四个和第五个示例的邮箱地址不符合要求,因此返回 false。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月20日
  • 已采纳回答 12月12日
  • 创建了问题 12月11日

悬赏问题

  • ¥15 可任意设置即使长度的倒计时器电路设计
  • ¥15 MusePose 部署安装问题,安装后无法启动
  • ¥15 Psexec获得电脑system权限该怎么操作,有偿
  • ¥50 python+flask实现流式api接口的问题
  • ¥20 关于#vue.js#的问题:后端返回的代码如下,根据后端返回的数据在页面上重新展示
  • ¥15 visual studio 社区版离线激活失败了
  • ¥15 Flask应用部署到阿里云服务器失败,无法访问网页,问题出在哪里?
  • ¥15 有什么好的直流步进减速电机42的厂家推荐,保持力矩达到0.3N.M
  • ¥15 一道蓝桥杯的题,请问我错在哪里
  • ¥15 关于#android问题,xposed模块找不到so