正则表达式的应用(前端写法)

news2024/11/27 23:32:21

文章目录

    • 1、匹配字符串中,a标签的href值
    • 2、校验邮箱
    • 3、校验手机号码
    • 3、待添加...


1、匹配字符串中,a标签的href值

(1) 代码

/**
 * @description 匹配字符串中,a标签的href值
 * @param {string} str 匹配的字符串
 * @return {Array} 返回href值
 */
 function getHrefFromString (str) {
 	const reg = /<a([\s]+|[\s]+[^<>]+[\s]+)href=(\"([^<>"\']*)\"|\'([^<>"\']*)\')[^<>]*>/gi;
	const tempArr = str.toLowerCase().match(reg);
	let hrefValue = []
    for (var i = 0; i < tempArr.length; i++) {
        tempArr[i].toLowerCase().match(reg);
        hrefValue.push(RegExp.$3 + RegExp.$4)
    }
    return hrefValue
}

(2) 举例

getHrefFromString("<a href="https://www.baidu.com/"></a><a href="https://dl.qdjha.cn/sinfo/104384025_4002059.html"></a>")

在这里插入图片描述

2、校验邮箱

/**
 * @description 校验邮箱格式
 * @param {string} email 邮箱
 * @return {boolean} 返回校验结果,true:格式正确,false:格式错误
 */
function checkEmail(email) {
    if (!email) {
        return false
    }
    const reg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/
    return RegExp(reg).test(email);
};

3、校验手机号码

/**
 * @description 校验手机号码
 * @param {string} phone 手机号码
 * @return {boolean} 返回校验结果,true:正确,false:错误
 */
function isPhone (phone) {
    if (!phone) return false
    let regex = /^(13[0-9]{9})|(15[0-9]{9})|(17[0-9]{9})|(18[0-9]{9})|(19[0-9]{9})$/;
    if (!regex.test(phone)) {
        return false;
    } else {
        return true;
    }
};

3、待添加…

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1042149.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【算法练习Day6】四数相加赎金信三数之和四数之和

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;练题 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 文章目录 四数相加赎金信三数之和…

驱动开发---基于gpio子系统编写LED灯的驱动

一、GPIO子系统相关API 1.解析GPIO相关的设备树节点 struct device_node *of_find_node_by_path(const char *path) 功能&#xff1a;根据设备树节点路径解析设备树节点信息 参数&#xff1a; path&#xff1a;设备树所在的节点路径 /mynode0X12345678 返回值&#xff1a;成…

【Aurora 8B/10B IP(1)--初步了解】

Aurora 8B/10B IP(1)–初步了解 1 Aurora 8b/10b IP的基本状态: •通用数据通道吞吐量范围从480 Mb/s到84.48 Gb/s •支持多达16个连续粘合7GTX/GTH系列、UltraScale™ GTH或UltraScale+™ GTH收发器和4绑定GTP收发器 •Aurora 8B/10B协议规范v2.3顺从的 •资源成本低(请参…

环保电商:可持续发展在跨境电子商务中的崭露头角

近年来&#xff0c;环保意识的崛起和可持续发展的重要性日益凸显&#xff0c;已成为全球关注的焦点。在这个背景下&#xff0c;电子商务行业也逐渐加入了可持续发展的浪潮&#xff0c;形成了新的商业机会。 跨境电子商务领域&#xff0c;一股环保电商的潮流正崭露头角&#xf…

推荐一个AI人工智能技术网站(一键收藏,应有尽有)

1、Mental AI MentalAI&#xff08;https://ai.ciyundata.com/&#xff09;是一种基于星火大模型和文心大模型的知识增强大语言模型&#xff0c;专注于自然语言处理&#xff08;NLP&#xff09;领域的技术研发。 它具备强大的语义理解和生成能力&#xff0c;能够处理各种复杂的…

SRM系统一键查询:简化采购流程

一、SRM系统一键查询的意义和功能 1. 统一数据源&#xff1a;SRM系统将企业的供应商信息、采购订单、交易记录等数据整合到一个统一的平台&#xff0c;方便用户进行查询和分析。 2. 快速访问供应商信息&#xff1a;一键查询功能使用户能够快速访问和查找特定供应商的详细信息…

如何在居家办公、咖啡厅办公和联合办公空间办公中抉择?

在选择居家办公、咖啡厅办公和联合办公空间办公时&#xff0c;需要考虑以下因素&#xff1a; 1. 工作效率&#xff1a;居家办公可以提供一个安静、无干扰的环境&#xff0c;这有时可以提高工作效率。然而&#xff0c;如果家庭环境不够理想&#xff0c;或者需要与同事进行面对面…

讲讲项目里的状态存储器vuex

前言 在一个企业级的应用里&#xff0c;状态存储器起着举足轻重的作用。与我们日常的练手项目不同&#xff0c;企业级项目的vuex更专注更集中更便捷。 简单回顾 让我们简单回顾一下vuex这个插件的用法。 Vuex 的状态存储是响应式的。 当 Vue 组件从 store 中读取状态的时候&…

ShardingSphere分库分表(二):基础介绍

1、简介 Apache ShardingSphere 是一套开源的分布式数据库中间件解决方案组成的生态圈&#xff0c;它由 JDBC、Proxy 和 Sidecar&#xff08;规划中&#xff09;这 3 款相互独立&#xff0c;却又能够混合部署配合使用的产品组成。 它们均提供标准化的数据分片、分布式事务和数…

文件包含漏洞原理刨析

文件包含漏洞 开发人员通常会把可重复使用的函数写到单个文件中&#xff0c;在使用某些函数时&#xff0c;直接调用此文件&#xff0c;而无需再次编写&#xff0c;这种调用文件的过程一般被称为包含。 为了使代码更加灵活&#xff0c;通常会将被包含的文件设置为变量&#xf…

flutter版本dart版本对应关系

Flutter 版本架构Ref发布日期Dart 版本3.13.5x6412fccda2023/9/213.1.23.13.5 file3.13.5arm6412fccda2023/9/213.1.23.13.5 file3.13.4x64367f9ea2023/9/143.1.23.13.4 file3.13.4arm64367f9ea2023/9/143.1.23.13.4 file3.13.3arm64b0daa732023/9/143.1.13.13.3 file3.13.3x64…

希望杯、希望数学系列竞赛辨析和希望数学超1G的真题和学习资源

中国的中小学数学竞赛种类非常多&#xff0c;但是说到全国性的数学竞赛&#xff0c;影响力最大的之一就是“希望杯”&#xff0c;在2017年国家喊停学科竞赛后&#xff0c;“希望杯”逐步停止了&#xff0c;但是鉴于希望杯的巨大影响力&#xff0c;以及背后的利益纠葛&#xff0…

【网络安全】一篇文章带你了解CTF那些事儿

文章目录 一、什么是CTF&#xff1f;二、CTF需要学习那些知识&#xff1f;新书推荐适合新手自学的网络安全基础技能“蓝宝书”&#xff1a;《CTF那些事儿》内容简介读者对象专家推荐目录 一、什么是CTF&#xff1f; CTF&#xff08;Capture The Flag&#xff09;中文一般译作夺…

BinDiff:二进制文件的开源比较工具

BinDiff 是一个二进制文件比较工具&#xff0c;可以快速查找反汇编代码中的差异和相似之处&#xff0c;它已开源。 使用 BinDiff&#xff0c;您可以识别并隔离供应商提供的补丁中漏洞的修复。 您还可以在同一二进制文件的多个版本的反汇编之间移植符号和注释&#xff0c;或使…

ORACLE 内存结构之系统全局区(SGA)

每个 Oracle 数据库实例都会在内存中分配一个很大的内存结构&#xff0c; 称为系统全局区(System Global Area), 这是一个大型的共享内存结构,每个Oracle进程都会访问它。 在Linux/Unix操作系统上,SGA是一个物理实体&#xff0c;使用操作系统命令能“看到它”。 它被操作系…

计算机类软件方向适合参加的比赛

前言 博主是一名计算机专业的大三学生&#xff0c;在校时候参加了很多比赛和训练营&#xff0c;现在给大家博主参加过的几个的比赛&#xff0c;希望能给大一大二的学生提供一点建议。 正文 最近也有比赛的&#xff0c;我会从时间线上来给大家推荐一些比赛&#xff0c;并且给…

NLP中token总结

Token 可以被理解为文本中的最小单位。在英文中&#xff0c;一个 token 可以是一个单词&#xff0c;也可以是一个标点符号。在中文中&#xff0c;通常以字或词作为 token。ChatGPT 将输入文本拆分成一个个 token&#xff0c;使模型能够对其进行处理和理解 在自然语言处理&#…

virtualbox安装linux虚拟机访问互联网(外网)的方法

virtualbox安装linux虚拟机访问互联网&#xff08;外网&#xff09;的方法 设置方法效果图 设置方法 效果图

【C++11】万能引用与完美转发

文章目录 1. 模板中的&&—万能引用2. 完美转发及其应用场景3. 用到的代码3.1 string.h3.2 list.h3.3 test.cpp 1. 模板中的&&—万能引用 首先我们来看这样一段代码&#xff1a; 这里有4个函数&#xff0c;我们很容易能看出来它们是一个重载的关系 然后我们给这…

Windows下libmodbus 支持upd库的编译与Qt里的调用

一. libmodbus 支持udp版库下载 https://github.com/systemmonkey42/libmodbus/tree/udp_support 二. MSYS2编译工具安装 &#xff08;1&#xff09;下载MSYS2并安装 下载地址&#xff1a;https://www.msys2.org/ 双击该exe&#xff0c;安装msys2 (2) 安装编译所需库 在软件安…