c#算法检查是否有特定的“单词”;存在于url中

本文关键字:单词 存在 url 检查 算法 是否 | 更新日期: 2023-09-27 18:17:43

我有一个url:

http://www.domain.com/path/path/path/path/file1.html

然后另一个:

http://www.domain.com/path/path/external/path/path/file1.html

请注意/external/在路径内。

现在的文件"是相同的",但他们针对不同的受众基于/external/。如果路径包含/external/,则该路径为外部使用,否则为内部使用。

我的问题是如何将这两个文件相互关联?'/external/'可以在路径内的任何位置。

每个文件最多可以有一个外部类型,或者根本没有。

现在将路径映射到它的外部类型,我想这样做:

指定文件:

  • targetPath = http://www.domain.com/path/path/path/path/file1.html
  • 获取包含/external/的所有文件路径作为列表
    • 查找列表中的每个路径
      • 删除/external/
      • if path == targetPath
        • targetPath的外部路径为路径
      • 打破循环

c#算法检查是否有特定的“单词”;存在于url中

实际上,您不必将包含/external/的所有文件路径添加到列表中。您可以直接使用String.Replace方法。

string targetPath = "http://www.domain.com/path/path/external/path/path/file1.html";
targetPath = targetPath.Replace("/external/", "/");

这将用单个/替换字符串中的所有/external/部分。如果字符串不包含任何/external/字符串,它将简单地不替换任何内容。