正则表达式小记

一、什么是正则表达式?

1.定义

正则表达式(Regular Expression)是由字符和特殊符号组成的 "模式字符串",本质是一种描述文本规则的语法,可用于匹配、查找、替换或验证字符串中指定的内容。

2.组成

普通字符(字母、数字)和特殊字符("元字符")组成

字符类

  • 量词
  • 位置词

3.小练

复制代码
#手机号验证
^1[3-9]\d{9}$

1开始,第二位是3-9的数字,匹配后9位数字

复制代码
#邮箱验证
^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$

a-zA-Z0-9_-\]匹配内容为大小写字母、数字、下划线、减号;+匹配至少一位; .表示. ### 二、拓展 下面是一个字符分割的案例 ```c if (res.code == 0 || res.code == 200) { const processedData = []; const FIELDS = [ '质量损失', '外观等级', '样品尺寸:宽', '样品尺寸:长', '样品尺寸:面积', '测试前质量', '测试后质量' ]; const checkField = (val) => { if (!val || typeof val !== 'string') return null; const reg = /([\d,.]+)\(([\d,.]+)\)/; const match = val.match(reg); if (!match) return null; const before = match[1].trim(); const inside = match[2].trim(); // 剩余内容截取 // const bracketStartIndex = val.indexOf(')') + 1; // const restValue = bracketStartIndex > 0 ? val.substring(bracketStartIndex) : ''; // 数字校验 const numCheckReg = /^[\d,.]+$/; if (!numCheckReg.test(before) || !numCheckReg.test(inside)) return null; // 数组匹配 const beforeArr = before.split(',').map(item => item.trim()); const insideArr = inside.split(',').map(item => item.trim()); if (beforeArr.length !== insideArr.length) return null; const isAllMatch = beforeArr.every((item, index) => item === insideArr[index]); return isAllMatch ? beforeArr : null; }; ``` * 推荐应用实例文章: [正则表达式应用](https://blog.csdn.net/Ed7zgeE9X/article/details/133801677?ops_request_misc=&request_id=&biz_id=102&utm_term=%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E5%B8%B8%E8%A7%81%E5%BA%94%E7%94%A8&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-133801677.142%5Ev102%5Epc_search_result_base4&spm=1018.2226.3001.4187)

相关推荐
特立独行的猫a2 天前
[鸿蒙PC三方库移植] 移植PCRE正则表达式库到鸿蒙PC平台的完整实践
华为·正则表达式·harmonyos·移植·pcre
独隅2 天前
Linux 正则表达式 的简介
linux·mysql·正则表达式
Maggie_ssss_supp3 天前
Linux-正则表达式
linux·运维·正则表达式
IT陈图图4 天前
基于 Flutter × OpenHarmony 图书馆管理系统之构建借阅记录模块
flutter·正则表达式·openharmony
WHOVENLY4 天前
揭秘正则表达式的基础语法与应用
开发语言·javascript·正则表达式
IT陈图图5 天前
基于 Flutter × OpenHarmony 的正则表达式测试器开发实战
flutter·正则表达式·openharmony
不平衡的叉叉树7 天前
我们遇到了正则表达式的灾难性回溯问题
java·正则表达式
Meteors.7 天前
正则表达式及其常见使用(Kotlin版)
正则表达式
至此流年莫相忘7 天前
正则表达式之捕获分组——Python篇
python·正则表达式
西红市杰出青年7 天前
crawl4ai------AsyncPlaywrightCrawlerStrategy使用教程
开发语言·python·架构·正则表达式·pandas