在两个参数之间查找多个字符串

我正在尝试创建一个函数,它将在两个参数(重写和重定向)之间获取一个字符串。我无法理解它。


我有一个看起来像这样的字符串:


add_header X-Robots-Tag "noindex, follow" always; rewrite ^/en/about/Administration/index.aspx /en/about/more-about/administration redirect; rewrite ^/en/about/Administration/supervisory-board/index.aspx /nl/over/meer-over/administration redirect; rewrite ^/en/about/Departments-sections-and-fields/index.aspx /en/about/more-about/department-divisions-and-fields redirect; rewrite ^/en/about/For-companies/index.aspx /en/about/more-about/for-companies redirect; rewrite ^/en/about/contact-information/index.aspx /en/about/more-about/contact-information redirect; rewrite ^/en/about/index.aspx /nl/over redirect;

我想要以下输出:


/en/about/Administration/index.aspx /en/about/more-about/administration

 

/en/about/Administration/supervisory-board/index.aspx /nl/over/meer-over/administration 


/en/about/Departments-sections-and-fields/index.aspx /en/about/more-about/department-divisions-and-fields  


/en/about/For-companies/index.aspx /en/about/more-about/for-companies


/en/about/contact-information/index.aspx /en/about/more-about/contact-information


/en/about/index.aspx /nl/over

获取两个参数之间的所有字符串的正确正则表达式或方法是什么?


莫回无
浏览 62回答 1
1回答

胡子哥哥

尝试:\brewrite \^(.*?)\s+redirect;查看在线演示\brewrite \^- 在左侧的单词边界和右侧的空格后跟文字“^”之间字面地“重写”;(.*?)- 匹配(惰性)0+ 个字符;\s+redirect;- 在左侧的 1+ 个空白字符和右侧的分号之间“重定向”。查看将打印的在线 GO演示:/en/about/Administration/index.aspx /en/about/more-about/administration/en/about/Administration/supervisory-board/index.aspx /nl/over/meer-over/administration/en/about/Departments-sections-and-fields/index.aspx /en/about/more-about/department-divisions-and-fields/en/about/For-companies/index.aspx /en/about/more-about/for-companies/en/about/contact-information/index.aspx /en/about/more-about/contact-information/en/about/index.aspx /nl/over
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go