8-7 WPS JS宏 正则表达式 元字符应用-提取连续数字

8-7 WPS JS宏 正则表达式 元字符应用-提取连续数字

一、元字符

+:连续

二、示例提取连续数字

代码如下:

function test(){

var arr=Range("b2",Range("b65536").End(xlUp)).Value();

var newarr=arr.map(ar=>ar\[0.split("、").map(v=>v.match(/\d/g).join("")).join("、")]);

//分段展示:

//第1步:var newarr=arr.map(ar=>ar0.split("、"));//split:拆分

//结果:newarr=\["刘小明1000","陈好2000","李五3000","徐丽2500","程六2000","熊霞3000"]

//第2步:var newarr=arr.map(ar=>ar0.split("、").map(v=>v.match(/\d/g)));//match:搜索返回

//结果:newarr=\[\["1","0","0","0","2","0","0","0"],\["3","0","0","0","2","5","0","0"],\["2","0","0","0","3","0","0","0"]]

//第3步:var newarr=arr.map(ar=>ar0.split("、").map(v=>v.match(/\d/g).join("")));//join:合并

//简单方法:+:连续,match(/\d/g)中写入+,如match(/\d+/g),就可以省略join("")

//结果:newarr=\["1000","2000","3000","2500","2000","3000"]

//第4步:var newarr=arr.map(ar=>ar0.split("、").map(v=>v.match(/\d/g).join("")).join("、"));//join:合并

//结果:newarr="1000、2000","3000、2500","2000、3000"

//第5步:var newarr=arr.map(ar=>ar\[0.split("、").map(v=>v.match(/\d/g).join("")).join("、")]);用\[\]:横向输出改竖向输出

//结果:newarr=\["1000、2000","3000、2500","2000、3000"]

Console.log(JSON.stringify(newarr))//打印数组

Range("c2").Resize(arr.length,1).Value2=newarr;

}

相关推荐
何何____4 分钟前
Vue 生命周期详解
前端·javascript
默_笙1 小时前
💫 闭包是个背包:拆解小米前端面试题里的三道"闭包陷阱"
前端·javascript·面试
尾善爱看海4 小时前
《JavaScript 数组操作全攻略:12 类 API + 30 个实战场景 + 20 个避坑指南》
前端·javascript·面试
OpsEye4 小时前
为什么你的 Agent 莫名烧钱?聊聊循环调用的兜底方案
javascript·ai编程
linux_cfan5 小时前
16 · `custom-media-element`:属性拦截与转发
前端·javascript·音视频
右耳朵猫AI5 小时前
Web前端周刊2026W38 | React 19.3 发布、StyleX 深潜、jsdom 30.1 提速
前端·javascript·react.js·typescript·node.js
落魄大学生之流水线上谋生计5 小时前
GreenLife Carbon · OpenHarmony 智慧低碳生态平台
javascript
福兮说6 小时前
用 IndexedDB 存用户的文件,我踩过的五个坑
前端·javascript
胡志辉的博客7 小时前
【完全开源】IP 纯净度检测 可一键部署到自己的CF
前端·javascript·chrome·ip·chromium
Hilaku7 小时前
作为面试官,我最怕遇到什么样的候选人?
前端·javascript·程序员