regex 正则表达式从字符串中提取非常量字符

wqnecbli  于 2023-08-08  发布在  其他
关注(0)|答案(1)|浏览(86)

如何使用正则表达式从字符串中提取非常量字符。字符串是
archives/latest/pipelines/my-page/pages/content/page1/
这里我必须删除**'archives/latest/pipelines'和'pages/',它们在多个字符串中重复出现
我已经使用下面的正则表达式提取了my-page

(?<=archives\/latest\/pipelines\/)[^\/]*(?=\/pages\/)

字符串
但不确定如何提取**/my-page/content/page 1/**

i/p : archives/latest/pipelines/my-page/pages/content/page1/
o/p : /my-page/content/page1/


请帮帮忙

u1ehiz5o

u1ehiz5o1#

你可以使用这个正则表达式:

archives/latest/pipelines/([^/]*/)pages/(.*)

字符串
(其中[^/]*表示与/不同的任意数量的字符),然后提取第一个和第二个group并将它们连接起来。

>>> import re
>>> src = re.search(r"archives/latest/pipelines/([^/]*/)pages/(.*)", "archives/latest/pipelines/my-page/pages/content/page1/")
>>> src.group(1) + src.group(2)
'my-page/content/page1/'

相关问题