正则表达式小记

一、什么是正则表达式?

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;
            };
相关推荐
zx_741484819 小时前
【Linux入门】Shell 函数、正则表达式与文本处理:cut 与 awk
linux·运维·正则表达式
Patrick在香港3 天前
Claude Prompt 香港场景:公文里「今日」落在 6 个日历日上,「翌日」锚错了 5 天
python·自然语言处理·正则表达式·claude·数据清洗
梦帮科技5 天前
Next.js 16 模块化单体实战:App Router、领域模块与 Route Handler 分层
css·数据结构·链表·正则表达式·node.js·json·html5
yume_sibai11 天前
正则表达式完全指南(基础语法 + 实战应用 + 性能优化 + 最佳实践)
开发语言·正则表达式·c#
研☆香12 天前
js中使用的正则表达式
开发语言·javascript·正则表达式
2601_9622935317 天前
浅学python | 正则表达式集锦
正则表达式·字符串匹配·python知识·浅学python·ip地址检查
2601_9622955817 天前
Python中正则表达式的知识汇总分享
python·正则表达式·模块·语法·匹配
启观川17 天前
Python基础-第 16 章 综合案例:客户信息管理系统
开发语言·笔记·python·正则表达式
2601_9622940517 天前
Python 操作 Word:如何查找、替换和批量修改文本
python·正则表达式·word·文档处理·查找替换
for_ever_love__22 天前
python基础语法学习: 正则表达式
python·学习·正则表达式