2

ファイルのすべての行から読み取るメソッドを作成したいと考えています。次に、パイプ間をチェックし、3 文字を超えて数字のみの単語があるかどうかを判断する必要があります。ファイルには、次のように編成された文字列があります。

何が起こっているの{noway|それはクール|1293328|なぜ|わからない|見る}

この文で、ソフトウェアは 1293328 を削除するはずです。

結果の文は次のようになります。

何が起こっているの{いや|それはいい|わからない}

これまで、ファイルからすべての行を読み取り、間の単語が | かどうかを判断する関数を作成しました。| | 削除する必要があるかどうか (noway、that's cool などの文字列をチェックする)

パイプ間の文字列を取得する方法がわかりません。

4

3 に答える 3

1

Split メソッドを使用して、文字列を文字で分割できます。

string YourStringVariable = "{noway|that's cool|1293328|why|don't know|see}";

YourStringVariable.Split('|');  //Returns an array of the strings between the brackets
于 2012-06-26T18:20:16.090 に答える
0
        string YourStringVariable = "{noway|that's cool|1293328|why|don't know|see}";
        string[] SplitValue=g.Split('|');
        string FinalValue = string.Empty;
        for (int i = 0; i < SplitValue.Length; i++)
        {
            if (!SplitValue[i].ToString().Any(char.IsDigit))
            {
                FinalValue += SplitValue[i]+"|";    

            }

        }
于 2012-06-27T12:21:11.107 に答える
0

内容:

string RemoveValues(string sentence, string[] values){

   foreach(string s in values){
      while(sentence.IndexOf("|" + s) != -1 && sentence.IndexOf("|" + s) != 0){
         sentence = sentence.Remove(sentence.IndexOf("|" + s), s.Lenght + 1);
      }
   }

   return sentence;
}

あなたの場合:

string[] values = new string[3]{ "1293328", "why", "see" };
string sentence = RemoveValues("noway|that's cool|1293328|why|don't know|see", values);
//result: noway|that's cool|don't know
于 2012-06-26T18:30:35.173 に答える