【发布时间】:2014-08-21 12:02:49
【问题描述】:
假设我们有以下字符串数组(这个数组要大得多):
[
'http://www.example.com?id=123456',
'http://www.example.com?id=234567'
]
如您所见,两个字符串中直到第一个数字的所有内容都是相同的。有没有办法轻松找到两个字符串的共同点和不同点?这样我就会得到一个像'http://www.example.com?id=' 这样的字符串和像['123456', '234567'] 这样的数组。
【问题讨论】:
-
['http://www.example.com?id=123456', 'http://www.example.com?id=123457']会发生什么? -
Regexp 可能不是解决此问题的理想工具。构建一个 trie 很简单,不会很慢,并且可以解决您的问题。
-
它应该输出(如问题中所述)'example.com?id=',因为这两个字符串有共同点。
-
@Taemyr 你能举个例子说明你会怎么做吗?
-
@Severin 从未使用 Ruby 编程。 stackoverflow.com/questions/9042426/… 讨论过它,但答案调用了我不熟悉的命令,所以我不能保证它的功能。 Trie 是一种常见的数据结构,因此可以在 Google 上搜索。 - 另请注意,这对您的问题来说有点矫枉过正。