WPS表格REGEXP公式提取车牌学习

今天在抖音刷到一个视频:用WPS的`REGEXP`公式,直接从一堆乱序、混杂的文本记录中精准提取车牌号------看得我当场愣住,这个公式确实厉害。特此整理记录,供后续复用。

仅供参考。部分待优化。

> 注:本文所用为WPS 12.8.2.19315版本,该版本**仅支持`REGEXP`函数**(不支持`REGEXEXTRACT`或`REGEXREPLACE`等常见变体),故所有公式均基于`REGEXP`实现。官方文档详见文末参考资料。

✅ 实战公式(可直接套用):

=IFERROR(LOOKUP(1,0/REGEXP(MID(SUBSTITUTE(B2,"",""),ROW(INDIRECT("1:"&LEN(SUBSTITUTE(B2,"",""))-6)),7),"^京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼A-ZA-Z0-9DF挂警{5,7}$",1),MID(SUBSTITUTE(B2,"",""),ROW(INDIRECT("1:"&LEN(SUBSTITUTE(B2,"",""))-6)),7)),"")

公式解析:

  1. SUBSTITUTE(B2,"","")`

→ 清除原始文本中所有空格(含全角、半角),确保字符连续无干扰;

  1. MID(..., ROW(INDIRECT("1:"&LEN(...)-6)), 7)`

→ 以滑动窗口方式,逐个截取长度为7的子字符串(因最短车牌为7字节:如"京A12345"共7字符);

  1. REGEXP(文本, 正则模式, 1)`

→ 在每个7字符片段中执行正则匹配,返回`TRUE/FALSE`逻辑值;

  1. LOOKUP(1,0/逻辑数组, 对应片段)`

→ 利用`0/TRUE=0`、`0/FALSE=#DIV/0!`的特性,定位首个匹配项并返回;

  1. IFERROR(...,"")`

→ 无匹配时返回空字符串,避免报错干扰。

正则模式详解:京津沪渝...宁琼A-ZA-Z0-9DF挂警{5,7}$`

  • ^:字符串起始锚点;

  • 京津沪渝...宁琼`:**第1位**------严格限定为全国31省市自治区汉字简称,杜绝错字、生造字;

  • A-Z:**第2位**------地市代码,仅允许大写英文字母(A--Z);

  • A-Z0-9DF挂警`:**第3--7位**------兼容全类型车牌:

✓ 普通蓝牌(5位):`京A12345`

✓ 新能源绿牌(6位):`京AD12345`(D/F为新能源专用字母)

✓ 黄牌/挂车/警用车(7位):`京A1234挂`、`京A1234警`

  • {5,7}:总长度控制为5--7字符(含省份+地市+号段),精准覆盖全部现行制式;

  • `$`:字符串结束锚点,确保匹配完整、不截断、不跨词。

WPS官方REGEXP使用说明

REGEXP

基于正则表达式,进行复杂文本的匹配、提取、替换,结果返回文本

(支持Perl兼容的正则表达式(PCRE)语法标准,默认区分大小写)

语法

REGEXP(text,regular_expression,match_pattern,replace_content)

Text 原始字符串。

regular_expression 匹配文本的正则表达式(必输项)

匹配文本的正则表达式

(正则表达式:匹配文本的正则表达式。支持Perl兼容的正则表达式(PCRE)语法标准,默认区分大小写)

Mtch_Pattern 匹配模式(默认0,非必输项)

0:提取,返回提取后的结果(数组)

1:判断,返回TRUE,FALSE(单值)

2:替换,返回替换后的结果(单值)

3:完整提取,无论参数一二是否为数组,都返回全部匹配结果(数组)

Replace_Content:替换内容(默认空文本)

第3个参数Type类型为2,替换模式时,此参数可用,可指定替换内容,省略参数替换内容为空文本(删除效果)

示例

=REGEXP("金山办公1988wps","\\d+",0)

或=REGEXP("金山办公1988wps","\\d+")

结果:1988

=REGEXP("金山办公1988wps","\\d+",1)

结果:True

=REGEXP("金山办公1988wps","\\d+",2)

结果:金山办公wps

相关推荐
zhangrelay8 小时前
新版|-|单片机原理与接口技术-2026持续改进优化-从MEGA2560-ESP32与Wokwi到ROS2-Lyrical与具身智能栈
笔记·单片机·嵌入式硬件·学习
叼烟扛炮12 小时前
Linux 学习笔记(三十三):线程互斥——互斥锁(Mutex)与死锁
linux·运维·服务器·笔记·学习·1024程序员节
m4Rk_13 小时前
【论文阅读】Agent 记忆机制(113):Agentic Memory Management——从“检索相关信息”走向“管理 Agent 内部记忆”
论文阅读·人工智能·学习·开源·github
辣知14 小时前
辣知·化智92 《山海经》里的史前密码
学习
鬼手点金15 小时前
KV Cache 未必是一次性的:可编辑、可组合的“笔记”
java·人工智能·笔记·学习·自动化·1024程序员节
kyrie_sakura16 小时前
大模型学习18 大模型学习 - LangChain2_Model I/O
学习·自然语言处理
宝绿特塑业再生科技16 小时前
板材收缩率不稳,户外家具装配尺寸为何对不上:从切割尺寸变化到接缝不一的系统性排查与对策
笔记·科技·学习·生活·户外家具·hdpe再生颗粒·hdpe
~城南花已开~17 小时前
Intel E810 SR-IOV VF Spoofcheck 防伪造测试-KVM3
服务器·网络·笔记·学习·ubuntu·etl工程师
我命由我1234519 小时前
6-3.Python 异常处理 - 异常处理进阶(else 块与 finally 块、异常传递、自定义异常)
开发语言·前端·数据库·后端·python·学习·java-ee
外收内放20 小时前
FastAPI猜字谜实战(8):收官
开发语言·python·学习·fastapi