过滤具有特定字符的字符串列[关闭]
Posted
技术标签:
【中文标题】过滤具有特定字符的字符串列[关闭]【英文标题】:Filtering string column with specific character [closed] 【发布时间】:2021-04-18 10:34:36 【问题描述】:我有一个这样的字符串列,想过滤“/”字符之间的内容:
A |
---|
9/17/001.a.x.y.16.04451 |
006.b.021017006814 |
2/17/000.c.m.n.15.00668/008 |
预期的输出是
A |
---|
001.a.x.y.16.04451 |
006.b.021017006814 |
000.c.m.n.15.00668 |
我怎么能用 python/R/Mysql
谢谢你
【问题讨论】:
什么是a.x.y
、c.m.n
等?
它们是随机字符 A-Z 或 0-9。哦,我忘记编辑输入时太糟糕了
@RonakShah 我刚刚编辑了我的问题。泰!
【参考方案1】:
在 mysql 中,可以使用regexp_replace()
:
select t.*,
regexp_replace(a, '^[^/]+/[^/]+/([^/]*)[/|^]', '$1')
from t;
逻辑是,如果存在斜线之间的第三个组件,您似乎想要第三个组件。否则,您似乎想要整个字符串。
Here 是一个 dbfiddle。
【讨论】:
@SonPham 。 . .您是否有理由不接受此答案?以上是关于过滤具有特定字符的字符串列[关闭]的主要内容,如果未能解决你的问题,请参考以下文章