我在编写C++时使用vim和vim插件进行visual studio.通常,我发现自己想要在函数中搜索字符串,例如每次调用object->public_member.memberfunc().
我知道vim提供了一种搜索单个单词的便捷方式,通过按*和#,它还可以使用无处不在的斜杠/命令搜索键入的字符串.当尝试搜索上述字符串的所有实例时,需要一段时间才能重新输入/.
有没有办法搜索选择?例如,突出显示v,然后复制y,有没有办法粘贴后/?有更简单的捷径吗?
问题:
我有一个大约120,000个用户(字符串)的文本文件,我想将其存储在一个集合中,然后再对该集合执行搜索.
每次用户更改a的文本时都会发生搜索方法TextBox,结果应该是包含文本的字符串TextBox.
我不必更改列表,只需将结果拉出来并将其放入ListBox.
到目前为止我尝试过的:
我尝试了两个不同的集合/容器,我正在从外部文本文件中转储字符串条目(当然是一次):
List<string> allUsers;HashSet<string> allUsers;使用以下LINQ查询:
allUsers.Where(item => item.Contains(textBox_search.Text)).ToList();
我的搜索事件(用户更改搜索文本时触发):
private void textBox_search_TextChanged(object sender, EventArgs e)
{
if (textBox_search.Text.Length > 2)
{
listBox_choices.DataSource = allUsers.Where(item => item.Contains(textBox_search.Text)).ToList();
}
else
{
listBox_choices.DataSource = null;
}
}
Run Code Online (Sandbox Code Playgroud)
结果:
两者都给了我一个很差的响应时间(每次按键之间大约1-3秒).
题:
你认为我的瓶颈在哪里?我用过的系列?搜索方法?都?
如何获得更好的性能和更流畅的功能?
Knuth-Morris-Pratt搜索算法和Boyer-Moore搜索算法之间的主要区别是什么?
我知道KMP在X中搜索Y,尝试在Y中定义模式,并将模式保存在向量中.我也知道BM对于像DNA(ACTG)这样的小词更有效.
它们的工作方式有哪些主要区别?哪一个更快?哪一个不那么电脑贪心?在哪些情况下?
我在理解Boyer Moore字符串搜索算法时遇到了问题.
我正在关注以下文件.链接
我无法确定delta1和delta2的确切含义,以及它们如何应用于查找字符串搜索算法.语言看起来有点模糊..
如果有人可以帮助我理解这一点,那将非常有帮助.
或者,如果您知道任何其他易于理解的链接或文档,请分享.
提前致谢.
我正在使用PHP,我想知道是否有一种预定义的方式将外国字符转换为非外国替代品.
诸如ê,ë,é之类的字符都会产生'e'.
我正在寻找一个函数,它将获取一个字符串并返回它没有特殊字符.
任何想法将不胜感激!
在C#中,有一种方法可以通过Enumerable.Any检查序列中的元素是否满足条件来减少if语句的长度(https://msdn.microsoft.com/en-us/library/vstudio/bb534972%28v= vs.100%29.aspx).
例如,而不是:
If ( string.Contains(">") || string.Contains("<") || string.Contains("&") || string.Contains("l") || string.Contains("p") )
Run Code Online (Sandbox Code Playgroud)
我们可以用
if (new [] { ">", "<", "&", "l", "p"}.Any(w => string.Contains(w)))
Run Code Online (Sandbox Code Playgroud)
在Java中是否有相同的,如果不是更好的方式?
如何以不区分大小写的方式在文件中搜索单词?
例如
如果我UpdaTe在文件中搜索,如果文件包含更新,搜索应该选择它并将其计为匹配.
我有一个字符串数据库(任意长度),它拥有超过一百万个项目(可能更多).
我需要将用户提供的字符串与整个数据库进行比较,并检索相同的字符串(如果存在)或以其他方式返回最接近的模糊匹配(60%相似性或更好).理想情况下,搜索时间应小于一秒.
我的想法是使用编辑距离将每个数据库字符串与搜索字符串进行比较,然后根据数据库的长度缩小数据库中的候选项.
但是,因为我需要经常执行此操作,所以我正在考虑构建db字符串的索引以保留在内存中并查询索引,而不是直接查询db.
有关如何以不同方式解决此问题或如何构建内存中索引的任何想法?
if (strpos(htmlentities($storage->getMessage($i)),'chocolate'))
Run Code Online (Sandbox Code Playgroud)
嗨,我正在使用gmail oauth访问权限来查找电子邮件地址中的特定文本字符串.有没有办法比在上面的代码中使用strpos更快更有效地查找文本实例?我应该使用哈希技术吗?
我想要做的是在文本文件中找到字符串的所有实例,然后将包含所述字符串的完整行添加到数组中.
例如:
eng GB English
lir LR Liberian Creole English
mao NZ Maori
Run Code Online (Sandbox Code Playgroud)
例如,搜索eng必须将前两行添加到数组中,当然包括文件中的更多"eng"实例.
如何使用文本文件输入和C#完成此操作?
string-search ×10
algorithm ×2
c# ×2
php ×2
string ×2
.net ×1
collections ×1
fuzzy-search ×1
go ×1
hash ×1
if-statement ×1
java ×1
linq ×1
regex ×1
theory ×1
viemu ×1
vim ×1
winforms ×1