-1
using Visual.Web.Developer.2010.Express;

ここでN00b
、テキストの各行の検索インスタンスを作成するにはどうすればよいstring1ですか?string2全体を検索して、のstring1'sすべてのアイテムの検索インスタンスにその1行のテキストが含まれているかどうかを確認したいと思いますstring2。との両方string1に、string2で区切られたテキスト行があります'\n'。これを行うための明白な方法はありますか?誰かがRegExを提案しましたが、どのようにRegExを組み込んで、..string2の各アイテムに一致するものを見つけて印刷するのでしょうか。。の単一のアイテムに関連するstring1インスタンスは少なくありません。string2string1

いくつ かstring1
Part_numbers1017FOO1121BARなど ..




いくつかstring2
SUPERCOLA A 51661017FOOAINDO
DASUDAMAC89891121BARBLO5W
など..

おそらく後でこれを理解するつもりですが、私はそれらをこのようにフォーマットしたいのですが、参考までに

1017FOOが一致しました:
SUPERCOLA A 51661017FOOAINDO
+ 1017FOOが一致したもう1つ+
など...

よろしくお願いします!
正しい方向へのポインタを探して、どの方法を使うべきか

4

1 に答える 1

3

書かれている要件は正規表現を必要としないので、私はそれらを使用しませんでした。必要に応じて、それらを非常に簡単に組み込むことができるはずです...

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());
于 2012-06-05T21:51:31.850 に答える