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-Z][A-Z0-9DF挂警]{5,7}$,1),MID(SUBSTITUTE(B2,,),ROW(INDIRECT(1:LEN(SUBSTITUTE(B2,,))-6)),7)),)公式解析1. SUBSTITUTE(B2,,)→ 清除原始文本中所有空格含全角、半角确保字符连续无干扰2. MID(..., ROW(INDIRECT(1:LEN(...)-6)), 7)→ 以滑动窗口方式逐个截取长度为7的子字符串因最短车牌为7字节如“京A12345”共7字符3. REGEXP(文本, 正则模式, 1)→ 在每个7字符片段中执行正则匹配返回TRUE/FALSE逻辑值4. LOOKUP(1,0/逻辑数组, 对应片段)→ 利用0/TRUE0、0/FALSE#DIV/0!的特性定位首个匹配项并返回5. IFERROR(...,)→ 无匹配时返回空字符串避免报错干扰。正则模式详解[京津沪渝…宁琼][A-Z][A-Z0-9DF挂警]{5,7}$- ^字符串起始锚点- [京津沪渝…宁琼]**第1位**——严格限定为全国31省市自治区汉字简称杜绝错字、生造字- [A-Z]**第2位**——地市代码仅允许大写英文字母A–Z- [A-Z0-9DF挂警]**第3–7位**——兼容全类型车牌✓ 普通蓝牌5位京A12345✓ 新能源绿牌6位京AD12345D/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]”)结果1988REGEXP(“金山办公1988wps””[\d]”,1)结果TrueREGEXP(“金山办公1988wps””[\d]”,2)结果金山办公wps