我想从一系列网址中提取一个子串的建议。我正在编写的代码应该从我们的web跟踪器的传入事件的URL中提取这段信息(URL的实际id )。
使用这些URL(包含我要查找的子字符串的URL的格式是前三个)
https://www.rbnett.no/sport/i/LA8gxP/_
https://www.itromso.no/sport/sprek/i/GGobq6/derfor-vraker-tromsoes-beste-loeper-sesongens-eneste-konkurranse-det-er-for-risikabelt-aa-delta
https://www.adressa.no/sport/fotball/i/9vyQGW/brann-treneren-ferdig-avsluttet-pressekonferansen-med-aa-sitere-max-manus
https://www.rbnett.no/dakapo/banner/
https://www.adressa.no/search/其中我想分别从前三个URL中提取子字符串"LA8gxP“、"GGobq6”和"9vyQGW“,而不是从后两个URL中提取"dakapo”、"banner“或"search”。
我正在征求有关regexp的建议,以便提取这段信息。据我所知,子字符串只包含a-z、A-Z和0-9。子字符串似乎只有6个字符,但这可能会随着时间的推移而改变。
到目前为止,我找到的最好的解决方案(使用Python)是:
match = re.search(r"/i/([a-zA-Z0-9]+)/", url)
substring = match.group(1)它很好用,但我觉得它不是很优雅。
此外,它还依赖于使用/i/-模式作为前缀。尽管它看起来像是一个一致的模式,但我不能百分之百地确定它是否是。
发布于 2020-08-06 00:08:39
我能想到的唯一其他替代方案是:\/i\/(.+)\/
https://stackoverflow.com/questions/63264465
复制相似问题