繁体   English   中英

使用Regex删除Google表格中最后一个正斜杠之后的所有内容

[英]Remove everything after last forward slash in Google Sheets with Regex

我在Google表格中有一个网址,我需要删除网址中最后一个正斜杠之后的所有内容。 我还需要确保最后一个正斜杠到位并添加(如果不存在)。

http://example.com/dp/tt560/?tag=ukos20

http://example.com/dp/tt560/

可以将它们全部包装到Google表格中的一个函数中吗?

这很接近,但不匹配

我认为= REGEXREPLACE可能是公式解决方案,但是我发现Regex非常棘手。

Google表格中的示例

https://docs.google.com/spreadsheets/d/1n9H6rbhrHLQP0MSzcGWXjQAah3IkzsS9AQFErYE4SdI/edit?usp=sharing

您可以使用

=REGEXREPLACE(A1, "(/[^/]+)(?:/\?[^/]*)?$", "$1/")

细节

  • (/[^/]+) -捕获组1: / ,然后捕获1个除/以外的字符
  • (?:/\\?[^/]*)? -可选的非捕获组匹配
    • / -斜线
    • \\? -一个? 烧焦
    • [^/]* - /以外的0个或更多字符
  • $ -字符串结尾。

替换为$1 ,组1的内容和/必须存在( 将其添加到缺少的地方 )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM