FreeChilly 2022-05-05 20:19 采纳率: 50%
浏览 58
已结题

js正则如何校验多个网址并以逗号分隔

  • 写回答

1条回答 默认 最新

  • Heerey525 前端领域新星创作者 2022-05-06 14:47
    关注

    一个直接一次验证的正则,我弄不来,我的思路是将字符串以逗号为分隔符转为数组,数组挨个正则验证

    
    const str = 'http://www.segmentfault.com,http://segmentfault.com'
                const reg = /^https?:\/\/(([a-zA-Z0-9_-])+(\.)?)*(:\d+)?(\/((\.)?(\?)?=?&?[a-zA-Z0-9_-](\?)?)*)*$/i
                const arr = str.split(',')
                let flag = true // 默认可验证通过
                for (let i = 0; i < arr.length; i++) {
                    if (!reg.test(arr[i])) { // 出现验证不通过情况
                        flag = false // 改为验证不通过
                        break // 终止循环
                    }
                }
                if (!flag) {
                    console.log('验证失败')
                } else {
                    console.log('验证成功')
                }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月14日
  • 已采纳回答 5月6日
  • 创建了问题 5月5日

悬赏问题

  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号