【问题标题】:Regex extract number from a string with a specific pattern in Alteryx [duplicate]正则表达式从 Alteryx 中具有特定模式的字符串中提取数字 [重复]
【发布时间】:2020-02-02 17:16:15
【问题描述】:

我有这样的字符串,看起来像一个 url

mainpath/path2/abc/PI 6/j

我需要从字符串中获取数字以及 PI

主要问题是 PI 部分的位置不会总是相同。有时它可能在最后。有时在中间。

那么如何使用正则表达式提取该数字? 我真的很纠结这个

【问题讨论】:

  • PI 总是PI 吗?或者它可以是任何字符串?总是有空间吗?中间还有其他角色吗?还是以前?还是之后?
  • 它总是 PI,但在字符串的不同位置

标签: regex alteryx


【解决方案1】:

就像使用RegEx Tool 一样简单。 /PI (\d+) 的正则表达式和“Parse”的输出方法应该可以解决问题。

【讨论】:

    【解决方案2】:

    如果您使用的是 Alteryx...假设您的字段名称是 [s],并且您正在寻找 [f](在您的示例中,[f] 的值是“PI”)...那么您可以有一个公式工具,它首先通过创建一个新字段 [tmp] 来找到 /PI

    SubString([s],FindString([s],"/"+[f])+1)
    

    然后创建[target] 之后的字段:

    SubString([tmp],0,FindString([tmp],"/"))
    

    从那里通过“文本到列”工具运行[target] 以拆分空间,这将为您提供“PI”和“6”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-19
      • 2021-05-24
      • 2019-03-13
      • 2021-11-09
      • 2020-07-13
      • 1970-01-01
      • 2021-09-06
      • 2011-05-10
      相关资源
      最近更新 更多