用户在处理数据时,经常会使用到正则表达式,用来描述某些字符串匹配规则,以此来对文本进行过滤。
1.1 预期效果
例如用户需要将「URL」文本字段进行判断,若字段全部为数字,则标记为「纯数字」,否则标记为「其他」,如下图所示:
1.2 实现思路
使用
REGEXP
函数判断是否为纯数字;
然后使用
IF
函数进行标记。
示例数据:
场景文档.xlsx
上传
示例数据至 FineBI 中。
方法一
添加「新增公式列」步骤,命名为「纯数字」,输入公式:
IF(REGEXP(URL,"\\d*")=1,"纯数字","其他")
,如下图所示:
注:公式框中的函数、字段都需要点击左侧的选择区域选择,不能手动输入。
公式说明:
公式
|
说明
|
REGEXP(URL,"\\d*")
|
若 URL 字段全部为数字,则返回 1,否则返回 0
|
IF(REGEXP(URL,"\\d*")=1,"纯数字","其他")
|
如果返回数值为1 ,则输出「纯数字」,否则输出「其他」
|
方法二
也可使用该公式:
IF(REGEXP(URL,"^[0-9]*$")=1,"纯数字","其他")
,如下图所示:
注:公式框中的函数、字段都需要点击左侧的选择区域选择,不能手动输入。
公式说明:
公式
|
说明
|
(REGEXP(URL,"^[0-9]*$")
|
若 URL 字段全部为数字,则返回 1,否则返回 0
^ 为匹配输入字符串的开始位置。
[0-9]*匹配多个数字, [0-9] 匹配单个数字,* 匹配前面的子表达式零次或多次;
$ 为匹配输入字符串的结束位置。
|
IF(REGEXP(URL,"^[0-9]*$")=1,"纯数字","其他")
|
如果返回数值为1 ,则输出「纯数字」,否则输出「其他」
|
正则表达式如下图说明: