我想搜索文本并返回包含最少参数集的行。我能想到的最简单的例子是在字典中搜索包含10个选项中至少5个的单词。如果我有“co or di na te di ct io ns”这个集合,我会返回任何包含5个选项的单词。结果将包括方向和坐标。
如果可能的话,第一步是减少字典(字母,至少一半选项..)此时我的解决方案是 1.使用列表生成潜在单词列表的所有可能性并搜索linux.words 2.迭代linux.words,如果grep返回每个元素,则递增计数器,然后返回结果计数器> n
有更简单的方法吗?我希望perl中有一些我不知道的东西很酷(我是perl的新手)。
答案 0 :(得分:0)
这会计算出现次数:
++$c while /(?=co|or|di|na|te|di|re|ct|io|ns)/g;
该模式很容易构建(join '|', map quotemeta, ...
)。