正则表达式示例

  • Last update:  2022-08-30
  • 1. 概述

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

    1.1 预期效果

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

    1607327572964997.png

    1.2 实现思路

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

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

    2. 示例

    示例数据:场景文档.xlsx

    上传 示例数据至 FineBI 中。

    2022-08-30_16-47-53.png

    方法一

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

    2022-08-30_16-52-37.png

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

    公式说明:

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

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

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

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

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

    方法二

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

    2022-08-30_16-54-15.png

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

    公式说明:

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

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

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

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

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

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

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



    附件列表


    主题: 数据分析进阶
    • Helpful
    • Not helpful
    • Only read

    滑鼠選中內容,快速回饋問題

    滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

    不再提示

    10s後關閉

    Get
    Help
    Online Support
    Professional technical support is provided to quickly help you solve problems.
    Online support is available from 9:00-12:00 and 13:30-17:30 on weekdays.
    Page Feedback
    You can provide suggestions and feedback for the current web page.
    Pre-Sales Consultation
    Business Consultation
    Business: international@fanruan.com
    Support: support@fanruan.com
    Page Feedback
    *Problem Type
    Cannot be empty
    Problem Description
    0/1000
    Cannot be empty

    Submitted successfully

    Network busy