u-sql - 如何根据 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"
解决方案
您可以尝试以下方法:
@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);
推荐阅读
- python - 在python pandas中按小时计数分组时间序列
- oracle - 无法连接到 Oracle Db
- javascript - 如何对混合文本和数字的数据进行排序?
- google-maps - 如何打开 KML 文件(来自 assets 文件夹)
- reactjs - 无法调用具有渲染函数的组件构造函数,该函数在 for 循环反应中返回 null
- angular - 服务错误:预期 0 个参数,但得到 1.ts(2554)
- python - 中断 Python 函数并操作变量
- python - 元素在点(x,y)处不可交互/不可点击
- asp.net - 从 ASP.NET 中的通用处理程序返回流
- heap - 在 n 个元素的最大堆 H 中,前 2 个 powerk -1 个元素位于前 k 个级别。如何证明这是假的?