在scala dataframe中,假设其中一列是url字符串,格式如下:https://www.x.com/x/x/x/o-5+t-1858+d-8011 或者https://www.x.com/x/x/x/t-1858+d-8011,提取“t-”之后的信息(在本例中为“1858”)并为此数据创建新列的最佳方法是什么?
col17t5w1#
基于上述url数据,您可以使用以下正则表达式并提取值“1858”(假设始终提取一个数字):
val urlDataRegex = "http.*t-(\\d++).*".r
例如,如果您持有一个示例url数据:
val sampleData = "https://www.xxxx.com/xxxx/xxxx/xxxx/o-5+t-1858+d-8011"
通过使用正则表达式,可以提取数字并将其赋给变量,如下所示:
val urlDataRegex(urlData) = sampleData
变量“urldata”的值为“1858”。如果由于任何原因,数据与预期不符,则会引发matcherror异常。
1条答案
按热度按时间col17t5w1#
基于上述url数据,您可以使用以下正则表达式并提取值“1858”(假设始终提取一个数字):
例如,如果您持有一个示例url数据:
通过使用正则表达式,可以提取数字并将其赋给变量,如下所示:
变量“urldata”的值为“1858”。如果由于任何原因,数据与预期不符,则会引发matcherror异常。