using Visual.Web.Developer.2010.Express;
N00b 在这里,
我将如何为string1
中的每一行文本创建一个搜索实例?我想完整地搜索string2
,以查看它是否string1's
搜索实例中包含string2
中每个项目的 1 行文本。string1
和string2
都有用'n'
分隔的文本行。有没有一些明显的方法可以做到这一点?有人建议使用正则表达式,但是我将如何合并正则表达式以查找和打印string2
中每个项目的匹配项string1
..string2
中有多个实例与string1
中的单个项目相关。
string1
中的一些:
Part_numbers1017FOO
1121巴
等。。。
string2
中的一些:
超级可乐A 51661017福安多
达苏达玛 C 89891121巴布罗5W
等。。。
以后可能会弄清楚这一点,但我希望它们像这样格式化,仅供参考
1017FOO 匹配:
超级可乐A 51661017福安多
+另一个1017FOO匹配
+等。。。
提前感谢!
寻找正确方向的指针,我应该使用什么方法
您编写的要求不需要正则表达式,所以我没有使用它们。如果需要,您应该能够非常轻松地合并它们......
string partNumbers = @"1017Foo
1121BAR
SomethingElse";
string searchText = @"SUPERCOLA A 51661017FOOAINDO
DASUDAMA C 89891121BARBLO5W";
string[] searchTerms = partNumbers.Split('n');
string[] searchedLines = searchText.Split('n');
StringBuilder output = new StringBuilder();
foreach(string searchTerm in searchTerms){
int matchCount = 0;
output.AppendLine(string.Format("For term: {0}", searchTerm.Trim()));
foreach(string searchedLine in searchedLines){
if(searchedLine.Trim().ToLower().Contains(searchTerm.Trim().ToLower())){
output.AppendLine(searchedLine.Trim());
matchCount++;
}
}
if(matchCount == 0){
output.AppendLine("There was no match");
}
output.AppendLine("== End of search ==");
}
Console.WriteLine(output.ToString());