1. 概述
用户在处理数据时,经常会使用到正则表达式,用来描述某些字符串匹配规则,以此来对文本进行过滤。
1.1 预期效果
例如用户需要将「URL」文本字段进行判断,若字段全部为数字,则标记为「纯数字」,否则标记为「其他」,如下图所示:
1.2 实现思路
使用 REGEXP 函数判断是否为纯数字;
然后使用 IF 函数进行标记。
2. 示例
示例数据:场景文档.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 ,则输出「纯数字」,否则输出「其他」 |
正则表达式如下图说明: