Python 将url中的字母数字文本替换为同一url中的aplha数字文本的组合
我遇到了一个独特的情况,需要将url中的字母数字文本替换为同一url中其他文本的组合 下面是一个示例url 网站url(“ABC_584”,“url=?” 在这个url中,我需要将“ABC_584”替换为“Overlay_Character_0” “ABC_584”不是静态的,并且会发生变化,因此在web_url(“XYZ_0-9”(即本例中的XYZ_0-9))之后的引号中的任何内容都必须替换为上述url中“Service/”之后的文本和FeatureServer/之后的数字 还有一件事“ABC_584”也可以是“123_123”完全数字化 有100的网址,我需要这样做,因此手动不可能,我尝试了VB脚本,编写Excel公式没有用 这里有谁可以通过Excel或Python代码使用任何可能的方法来帮助我Python 将url中的字母数字文本替换为同一url中的aplha数字文本的组合,python,python-3.x,excel,excel-formula,python-requests,Python,Python 3.x,Excel,Excel Formula,Python Requests,我遇到了一个独特的情况,需要将url中的字母数字文本替换为同一url中其他文本的组合 下面是一个示例url 网站url(“ABC_584”,“url=?” 在这个url中,我需要将“ABC_584”替换为“Overlay_Character_0” “ABC_584”不是静态的,并且会发生变化,因此在web_url(“XYZ_0-9”(即本例中的XYZ_0-9))之后的引号中的任何内容都必须替换为上述url中“Service/”之后的文本和FeatureServer/之后的数字 还有一件事“ABC
感谢阅读,如果您需要更多信息,请务必告诉我您想要做什么可以在gvim(或vi,vim)编辑器中通过一行regex replace命令完成(一行用于所有URL): 类似的正则表达式也可以使用Python完成(遍历所有URL) 如果确实要使用Excel公式:
=mid([url],10,find(“,”,[url])-10)提取“ABC_584”
=LEFT(替换(MID([url],FIND([url])+LEN([services/”),1000),“/FeatureServer/”,“u”),LEN(替换(MID([url],FIND([services/”,[url])+LEN([services/”,1000),“/FeatureServer/”,“u”)-LEN(“/query?”)
=替换([url],[1],[2])
VIM Re-ex表达式对我来说非常有用。我使用了它,但在转义序列中丢失了它,明确地为其他URL模式提供了基线。我将它与VIM editor一起使用!如果有人需要下载链接,请参阅:-以下是我执行的步骤:下载C:\Program Files(x86)后\Vim\vim82 Start:-gvim.exe-Application它将打开一个文本编辑器复制URL并将其粘贴到编辑器中:-当在底部编写正则表达式函数时,正常的复制粘贴可能不起作用,因此转到编辑选项并从那里使用粘贴来编写需要的正则表达式。按:colan,它将带您到bottom行,然后您可以粘贴Oliver在解决方案中提供的正则表达式:%s/web\U url(“.*”,“(.*服务\/(.*)\/FeatureServer \/(.*)\/query)\@=/web\U url(“\2\u3”,“/g不要忘记在%s之前使用Colen,我还将探索您使用Python和Excel提供的其他解决方案,并尝试添加注释Hanks@PankajHarde,刚刚在Vi解决方案中添加了“:”忘记感谢您Oliver!感谢@Oliver Leung
:%s/web_url(".*","\(.*services\/\(.*\)\/FeatureServer\/\(.*\)\/query\)\@=/web_url("\2_\3","/g
import re
print (re.sub("web_url\(\"(.*)\",\"(?=.*services\/(.*)\/FeatureServer\/(.*)\/query)",r'web_url("\2_\3","', [your url string]))