Ruby 置换宝石

Ruby 置换宝石,ruby,permutation,ruby-1.8,Ruby,Permutation,Ruby 1.8,我试图得到一个字符串列表,这些字符串是字母、数字和破折号的排列,长度从1到63不等。 我正在使用置换gem,并尝试使用join(“”)获取字符串 我确信我在这里遗漏了一些基本的东西。 非常感谢您的帮助。不确定您想要完成什么。下面的代码(一个简化的示例)怎么样 返回 => ["abc", "acb", "bac", "bca", "cab", "cba"] 不确定你想要完成什么。下面的代码(一个简化的示例)怎么样 返回 => ["abc", "acb", "bac", "bca",

我试图得到一个字符串列表,这些字符串是字母、数字和破折号的排列,长度从1到63不等。 我正在使用置换gem,并尝试使用
join(“”)
获取字符串

我确信我在这里遗漏了一些基本的东西。
非常感谢您的帮助。

不确定您想要完成什么。下面的代码(一个简化的示例)怎么样

返回

=> ["abc", "acb", "bac", "bca", "cab", "cba"] 

不确定你想要完成什么。下面的代码(一个简化的示例)怎么样

返回

=> ["abc", "acb", "bac", "bca", "cab", "cba"] 

因此,让我们使用以下机制进行SQL查询:

假设我想在数据库中找到一个人。Person有Firstname和Lastname,而不仅仅是Name。更复杂的是,Firstname和Lastname可能包含许多单词

。。。所以我们有来自搜索引擎的查询字符串,包含“Jo Svenda Schmidt”,其中“Jo Svenda”是名字

query = "Jo Svenda Schmidt".split
=> ["Jo", "Svenda", "Schmidt"]
query.permutation(query.length).collect { |x| x.join(" AND ") }.join(" OR ")

=> "Jo AND Svenda AND Schmidt OR Jo AND Schmidt AND Svenda OR Svenda AND Jo AND Schmidt OR Svenda AND Schmidt AND Jo OR Schmidt AND Jo AND Svenda OR Schmidt AND Svenda AND Jo"
这几乎是我们想要的,但不是全部。我们需要添加列名并将其分组。 分组可能很简单,只是 ... 加入(“)或(“) 在and处,然后在结果查询的末尾添加“(“到开头和”)”


但是如何将“Firstname=”和“Lastname=”或“LIKE”巧妙地添加到此查询中?

因此,让我们使用以下机制进行SQL查询:

假设我想在数据库中找到一个人。Person有Firstname和Lastname,而不仅仅是Name。更复杂的是,Firstname和Lastname可能包含许多单词

。。。所以我们有来自搜索引擎的查询字符串,包含“Jo Svenda Schmidt”,其中“Jo Svenda”是名字

query = "Jo Svenda Schmidt".split
=> ["Jo", "Svenda", "Schmidt"]
query.permutation(query.length).collect { |x| x.join(" AND ") }.join(" OR ")

=> "Jo AND Svenda AND Schmidt OR Jo AND Schmidt AND Svenda OR Svenda AND Jo AND Schmidt OR Svenda AND Schmidt AND Jo OR Schmidt AND Jo AND Svenda OR Schmidt AND Svenda AND Jo"
这几乎是我们想要的,但不是全部。我们需要添加列名并将其分组。 分组可能很简单,只是 ... 加入(“)或(“) 在and处,然后在结果查询的末尾添加“(“到开头和”)”


但是如何在这个查询中很好地添加“Firstname=”和“Lastname=”或“LIKE”?

p
返回
nil
,顺便说一句,所以
put(nil)。join(“”)
没有任何意义。是的,它确实有效。。。“file--53.txt”“file--54.txt”然而,我试图去掉块中的“p”,将整个字符串赋给一个实例变量,然后输入一个db。顺便说一句,这里没有使用置换gem:p它只是ruby>=1.8.7LOL!谢谢你的提醒,所以下载排列宝石是浪费时间和阅读它。回答了我自己的问题。。。拿出积木,把它分解成一个。每个人都做x等。谢谢大家的帮助。:)<顺便说一句,code>p返回
nil
,因此
put(nil).join(“”)
没有任何意义。是的,它确实有效。。。“file--53.txt”“file--54.txt”然而,我试图去掉块中的“p”,将整个字符串赋给一个实例变量,然后输入一个db。顺便说一句,这里没有使用置换gem:p它只是ruby>=1.8.7LOL!谢谢你的提醒,所以下载排列宝石是浪费时间和阅读它。回答了我自己的问题。。。拿出积木,把它分解成一个。每个人都做x等。谢谢大家的帮助。:)嗯。。。如何将联接的输出分配给变量。。。我正在尝试{| x |@variable=x.join('')},但它没有给我想要的。@perm_或_not_to _perm是否要存储整个数组?如果是这样,请尝试
@variable=['a','b','c'].permutation(3).收集{x}x.join('')}
Hmmmmm。。。如何将联接的输出分配给变量。。。我正在尝试{| x |@variable=x.join('')},但它没有给我想要的。@perm_或_not_to _perm是否要存储整个数组?如果是这样,请尝试
@variable=['a','b','c'].permutation(3).收集{x}x.join('')}
query = "Jo Svenda Schmidt".split
=> ["Jo", "Svenda", "Schmidt"]
query.permutation(query.length).collect { |x| x.join(" AND ") }.join(" OR ")

=> "Jo AND Svenda AND Schmidt OR Jo AND Schmidt AND Svenda OR Svenda AND Jo AND Schmidt OR Svenda AND Schmidt AND Jo OR Schmidt AND Jo AND Svenda OR Schmidt AND Svenda AND Jo"