如何在U-SQL中基于正则表达式提取子字符串?

时间:2019-07-12 09:50:08

标签: u-sql

我试图基于U-SQL中的正则表达式提取一些子字符串。但是我找不到内置函数来做到这一点。 也许甚至有更简单的方法来解决我的问题。 我有版本代码,例如“ 1.10.12 ABC”或“ 10.1”或“ 10.1.10”,并希望以仅获得前两个数字的方式对其进行标准化。 正则表达式中的"^\d+\.\d+"之类。

是否有办法在U-SQL中获得该结果?

@someData =
SELECT * FROM
    ( VALUES
    ("1.1.10 ABC"),
    ("1.10.1"),
    ("15.3.2")
    ) AS T(version);

我想要以下格式的版本:

"1.1"
"1.10"
"15.3"

1 个答案:

答案 0 :(得分:0)

您可以尝试以下操作:

@someData =
SELECT * FROM
    ( VALUES
    (Regex.Replace("1.1.10 ABC", "^\d+\.\d+"),
    (Regex.Replace("1.10.1", "^\d+\.\d+"),
    (Regex.Replace("15.3.2", "^\d+\.\d+")
    ) AS T(version);