反馈已提交

网络繁忙

您好,只有最新版本的6.0支持在线编辑修改,如果想创建/编辑文档,请移步到 *最新版本*

正则表达式示例

  • 文档创建者:Roxy
  • 历史版本:4
  • 最近更新:Roxy 于 2021-06-10
  • 1. 概述

    用户在处理数据时,经常会使用到正则表达式,用来描述某些字符串匹配规则,以此来对文本进行过滤。

    1.1 预期效果

    例如用户需要将「URL」文本字段进行判断,若字段全部为数字,则标记为「纯数字」,否则标记为「其他」,如下图所示:

    1607327572964997.png

    1.2 实现思路

    使用 REGEXP 函数判断是否为纯数字;

    然后使用 IF 函数进行标记。

    2. 操作步骤

    示例数据:场景文档.xlsx

    上传 示例数据至 FineBI 中。

    2.1 创建自助数据集

    创建自助数据集,选择示例数据下的所有字段,如下图所示:

    1607327863951727.png

    2.2 新增列计算

    方法一:

    添加「新增列」步骤,命名为「纯数字」,输入公式:IF(REGEXP(URL,"\\d*")=1,"纯数字","其他"),如下图所示:

    1607328053298894.png

    注:公式框中的函数、字段都需要点击左侧的选择区域选择,不能手动输入。

    公式说明:

    公式
    说明
    REGEXP(URL,"\\d*")

    若 URL 字段全部为数字,则返回 1,否则返回 0

    • \d 表示匹配数字,若要使用 \ 字符,需要再添加一个反斜杠。所以当公式为regexp(字符串,"\d")时会提示不合法,需写成regexp(字符串,"\\d")

    • * 表示匹配前面的子表达式零次或多次。

    IF(REGEXP(URL,"\\d*")=1,"纯数字","其他")如果返回数值为1 ,则输出「纯数字」,否则输出「其他」

    方法二:

    也可使用该公式:IF(REGEXP(URL,"^[0-9]*$")=1,"纯数字","其他"),如下图所示:

    1607328843980142.png

    注:公式框中的函数、字段都需要点击左侧的选择区域选择,不能手动输入。

    公式说明:

    公式
    说明
    (REGEXP(URL,"^[0-9]*$")

    若 URL 字段全部为数字,则返回 1,否则返回 0

    ^ 为匹配输入字符串的开始位置。

    [0-9]*匹配多个数字, [0-9] 匹配单个数字,* 匹配前面的子表达式零次或多次;

    $ 为匹配输入字符串的结束位置。

    IF(REGEXP(URL,"^[0-9]*$")=1,"纯数字","其他")如果返回数值为1 ,则输出「纯数字」,否则输出「其他」

    正则表达式如下图说明:
    1607329566936994.png


    2.3 效果查看

    详情参见本文 1.1 节。


    附件列表


    主题: 数据分析进阶
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    在线QQ(将在2023.01.03关停):800049425

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭