1

我有一个包含数百个 URL 的电子表格。每个 URL 中都有一个搜索引擎友好名称,后跟一个数字 ID,末尾有一个“/1”。这是一个例子:

http://www.somesite.com/directory/varying-file-names-Guide/431/1

在这种情况下,431 是数字 ID。我试图将这个数字 ID 提取到它自己的列中,但我缺乏 Excel 知识肯定会阻碍我。我找到了一些示例,但我尝试自定义这些示例以匹配我的需求会导致错误。在所有情况下,我需要提取的值总是在 URL 中的“-Guides/”和“/1”之间。

任何帮助将不胜感激。

谢谢!

4

3 回答 3

1

假设您在 A1 中的 URL 在 B1 中尝试此公式以提取该数字

=REPLACE(LEFT(A1,LEN(A1)-2),1,SEARCH("Guide/",A1)+5,"")

假设“指南”不是“指南” - 如果它是“指南”,那么 5 需要是 6 .....,即

=REPLACE(LEFT(A1,LEN(A1)-2),1,SEARCH("Guides/",A1)+6,"")

...或一种不同的方法,它将提取任何以第三个字符结尾的数字

=LOOKUP(10^5,RIGHT(LEFT(RIGHT(A1,7),5),{1,2,3,4,5})+0)

最多提取 5 位数字

于 2012-04-12T22:33:03.583 回答
0

感谢所有回答的人。我的一位同事也提出了一种同样有效的方法。

=MID(A6,FIND("uide/",A6,1)+5,LEN(A6)-FIND("tion/",A6,1)-6)

我想我会为面临同样问题的其他人提供这个。有趣的是看到人们解决问题的各种方式。

于 2012-04-13T15:30:39.200 回答
0

无论数字 ID 前面的单词如何,此公式都应该有效。假设您的 URL 在单元格 A1 中,

在单元格 B1 中:

=SUBSTITUTE(LEFT(A1, LEN(A1) - 2), "/","||", LEN(LEFT(A1, LEN(A1) - 2)) - LEN(SUBSTITUTE(LEFT(A1, LEN(A1) - 2), "/","")))

在单元格 C1 中:

=RIGHT(B1,LEN(B1)-FIND("||",B1)-1)
于 2012-04-12T22:46:25.580 回答