找回密码
 立即注册

QQ登录

只需一步,快速开始

赛龙周

银牌会员

103

主题

713

帖子

3256

积分

银牌会员

积分
3256

悬赏达人

赛龙周
银牌会员   /  发表于:2023-12-5 19:10  /   查看:2393  /  回复:4
本帖最后由 赛龙周 于 2024-1-21 16:36 编辑

近日逛论坛看到有很多格友针对字符串处理有不少需求,例如

把手机号中间隐藏显示:138****1280,空格分隔138 1280 1280
从不规则的文本中提取数字:VL8989-123,GNNM123等;

其中大部分需求可以通过Excel的函数组合可以解决,但感觉略显繁琐。
自己也通过学习了解到,正则表达式在字符处理上功能非常强大,但活字格前端能发挥正则表达式威力的地方恐怕就是JAVASCRIPT命令了。

要是有个正则表达式EXCEL函数可以方便多了,网上搜索说excel有,但我在offcie365中并没有找到,反而spreadjs中有三个正则函数。
貌似活字格都不能直接用,于是就用三脚猫的JS水平,照猫画虎的写了个自定义函数:REGEXFN(),语法如下:

REGEXFN(str,pattern,flags,type,[replacement])
str:(必选)待处理文本
pattern:(必选)正则表达式
flags:(必选)标志参数
type:(必选)固定文本分别是:"test","exec","replace","search","match","split"
replacement:(可选)当type是"replace"时的替换字符

做了几个demo供大家参考:
1.数据验证
2.字符替换
3.字符提取
活字格中可以用公式的地方都可以用,功能还是挺强的。唯一缺点是要会写正则表达式,不过好在网上有很多现成的或者是正则生成器。

附上工程文件,收点金币,感兴趣的下来看看。欢迎批评指正。


zdy.png

自定义正则函数.fgcc

713.97 KB, 下载次数: 15

售价: 50 金币  [记录]

4 个回复

倒序浏览
KinShing
中级会员   /  发表于:2023-12-6 23:26:04
沙发
回复 使用道具 举报
KinShing
中级会员   /  发表于:2024-8-19 01:51:04
板凳
表格字段值不能取
回复 使用道具 举报
赛龙周
银牌会员   /  发表于:2024-8-19 06:54:07
地板
KinShing 发表于 2024-8-19 01:51
表格字段值不能取

我的可以啊
回复 使用道具 举报
KinShing
中级会员   /  发表于:2024-8-19 22:53:58
5#

能否指教一下 我用10.050
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部