永洪社区

标题: 计算列-正则表达式、match [打印本页]

作者: yhdata_GcTov74r    时间: 2024-8-28 15:37
标题: 计算列-正则表达式、match
想用正则表达式匹配某一列的内容,如何实现呢?用match怎么都不是自己想要的


如:
文本列col['描述'
1行:测试测试测试OK测试
2行:测试测试测试NOOK测试
3行:测试测试测试POK测试


只想匹配出OK关键字,且OK前后不是字母的。如OKK、POK、NOK、okk、pok、nok不要。只要 OK、ok。


测试:
match(col['描述',"(?<![A-z])OK(?<![A-z])")")——不行
match(str(col['描述'),"(?<![A-z])OK(?<![A-z])")")——不行


可以用match函数吗?正则表达式应该怎么写呢?


作者: yhdata_lyaa    时间: 2024-8-28 15:54
试试iNdexof函数呢
https://www.yonghongtech.com/rea ... ighlightsub=iNdexof
作者: yhdata_lyaa    时间: 2024-8-28 15:55
参考

注意:indexOf(string, substring, [start]):下推数据库,返回的结果从1开始;内存处理,从0开始。
例如indexOf("hello world", "o"),下推数据库处理结果为5,内存处理结果为4

作者: yhdata_GcTov74r    时间: 2024-8-28 16:05
yhdata_lyaa 发表于 2024-8-28 15:55
参考

注意:indexOf(string, substring, [start]):下推数据库,返回的结果从1开始;内存处理,从0开始。

这样会找到很多个字符串,但是我需要剔除前后有字母
作者: yhdata_lyaa    时间: 2024-8-28 16:08
yhdata_GcTov74r 发表于 2024-8-28 16:05
这样会找到很多个字符串,但是我需要剔除前后有字母

那match好像也不行
https://www.yonghongtech.com/rea ... _highlightsub=match


作者: yhdata_lyaa    时间: 2024-8-28 16:23
一般用这个函数https://www.yonghongtech.com/rea ... lightsub=extractNTH




欢迎光临 永洪社区 (https://club.yonghongtech.com/) Powered by Discuz! X3.4