我有一个wordlist文本文件,体积小,长度不到几百字。我想获取一个关键字并根据wordlist检查,保存所有匹配并将其显示在列表框中。
我对编程很新,我一直在研究正则表达式以匹配部分模式,并且已经开始研究创建一个函数来生成关键字的每个排列/组合的列表,然后针对单词列表运行它们。
我希望有人可以提供帮助。我希望理想情况下匹配列表中按顺序共享四个以上字母的任何单词(意思是,如果列表中包含stephen
且关键字为steph12345
,那么我希望匹配。但是step_gtkyn0123
会通过)。
我真的只是想要指出正确的方向。
答案 0 :(得分:0)
如果我理解正确,您只想查找包含指定关键字中5个或更多连续字母的单词。这个位置并不重要。请尝试以下方法:
Dim words As String() = New String() {"steph", "steph123", "step_gtk", "stephan", "123steph123", "step1stph"}
Dim keyword As String = "steph12345"
'match must be greater than 4, so substring 5
Dim rgx As String = keyword.Substring(0, 5)
For Each word As String In words
If Regex.IsMatch(word, rgx) Then
Console.WriteLine(word)
End If
Next
'Outputs
'steph
'steph123
'stephan
'123steph123'