基于分隔符提取字符串的正则表达式
Posted
技术标签:
【中文标题】基于分隔符提取字符串的正则表达式【英文标题】:Regular Expression to extract a string based on delimiter 【发布时间】:2015-09-11 20:00:52 【问题描述】:我正在尝试从基于分隔符'.'(句点)的字符串中提取子字符串。有人可以分享您对如何使用 regexp_extract 进行操作的想法。谢谢。
**
- Input:-
15.075
0.035
**
Output
075
035
【问题讨论】:
【参考方案1】:从this answer 看来,您可以使用括号来捕获匹配项,就像在大多数正则表达式系统中一样。也就是说,匹配整个“.[0-9]+”,但只捕获数字部分,用括号括起来,如下所示:
select regexp_extract(input, r'\.([0-9]+)');
这表示匹配一个句点后跟一个或多个数字,并仅提取数字部分。我认为领先的 r
将该字符串标记为正则表达式,但我找不到关于它的文档。
参考:https://cloud.google.com/bigquery/query-reference?hl=en#regularexpressionfunctions
【讨论】:
【参考方案2】:看来你会想用REGEXP_EXTRACT
REGEXP_EXTRACT(number, r'\.(\d+)')
【讨论】:
谢谢你..我如何得到字符串的第一部分..如果它是 15.075 我正在寻找 15.以上是关于基于分隔符提取字符串的正则表达式的主要内容,如果未能解决你的问题,请参考以下文章