正则匹配电商url

今天偶然看到一道面试题,用正则表达式最大限度匹配电商URL
要求:仅仅识别 tmall.com 以及 taobao.com 这两个域名下的链接

效果图如下


image.png

代码如下

var str1 = "今天我淘到了一个宝贝,你也看一下感觉很适合你 https://detail.tmall.com/item.htm?id=577359445691&spm=a1z10.10649-b-s.0.0.335e225cy94dcW ,种草的话,下单吧!"
str1.match(/(https|http):\/\/[A-Za-z]+.((tmall.com)|(taobao.com))\/[A-Za-z]+.(htm|html)\?id=[0-9]+&spm=[a-zA-Z0-9.-]+/g)

正则解读
/(https|http):\/\/[A-Za-z]+.((tmall.com)|(taobao.com))\/[A-Za-z]+.(htm|html)\?id=[0-9]+&spm=[a-zA-Z0-9.-]+/g

  • /正则内容/g表示全局匹配
  • (https|http) 匹配http或https
  • :\/\/ 匹配://
  • [A-Za-z]+ 匹配多个大小写字母
  • . 匹配.
  • ((tmall.com)|(taobao.com)) 匹配tmall.com或taobao.com域名
  • \/ 匹配/
  • [A-Za-z]+ 匹配多个大小写字母
  • . 匹配.
  • (htm|html)匹配htm或html
  • \? 匹配?
  • id=[0-9]+ 匹配id=多个大小写字母
  • & 匹配&
  • spm=[a-zA-Z0-9.-]+ 匹配spm=多个数字字母以及.+
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容