我有一个类似这样的字符串:
opt/custom/building/BuildingInput/address/BuildingUnderwritingInput/Name
我需要捕获所有具有“Input”的单词并从路径中删除它们。 所以我的最后一串是:
opt/custom/building/address/Name
我试过这样的方法,但没用
x = "opt/custom/building/BuildingInput/address/BuildingUnderwritingInput/Name"
re.sub(r'Input/', r'/' , x.rstrip())
它给了我
opt/custom/building/Building/address/BuildingUnderwriting/Name
“BuildingInput”的“Building”和“BuildingUnderwritingInput”的“BuildingUnderwriting”保留在这里。我想把“BuildingInput”和“BuildingUnderwritingInput”这个词删掉。有什么帮助吗?或者,如果有人能告诉我如何从“Input”的出现追溯到“/”的第一次出现,这样我就可以匹配整个单词“buildingput”和“buildingunderwritingput”
删除0个或多个不是斜杠(
[^/]*
)的字符,直到出现Input
后跟斜杠的点之后:如果路径的最后一个元素也可能包含
Input
字(不带尾随斜杠),则可以改用此选项:这里
/
或字符串的结尾($
)在Input
之后匹配。但是,如果最后一个单词匹配,就会留下一个斜杠。如果这是一个问题,您可以分别删除它:使用此正则表达式删除以斜杠(/)内的输入结尾的所有单词:
对于您的情况:
你可以在这里测试:Refiddle Demo
当前只搜索和替换
Input/
,必须搜索整个单词,例如使用以下正则表达式:相关问题 更多 >
编程相关推荐