0

これはテキストファイルの私の行です。正規表現を使用して、テキスト ファイルからこの行を削除したいと考えています。

---------- RECOMMENDATION 1 OF 3 IN GROUP 1 (USD 168.90)----------

このコードを試していますが、エラーが発生します。

       StreamReader sreader = File.OpenText(@"C:\FareSearchRegex.txt");
       string line;
       while ((line = sreader.ReadLine()) != null)
       {
  var pattern = "---------- RECOMMENDATION 1 OF 3 IN GROUP 1 \(USD 168.90\)----------";

       var result = Regex.Replace(sreader,pattern," ");
        }
4

2 に答える 2

3

正規表現が行うことは 1 つだけです。

それらはテキストに一致します。

他のすべて (削除、置換など) は、正規表現自体ではなく、ライブラリによって提供される機能です。

行に一致する正規表現は非常に単純です。

---------- RECOMMENDATION 1 OF 3 IN GROUP 1 \(USD 168\.90\)----------

…しかし、それを削除する方法は、使用している言語/ライブラリによって異なります。C# を使用しているため、次のRegex.Replaceメソッドを使用できます。

var pattern = "---------- RECOMMENDATION 1 OF 3 IN GROUP 1 \(USD 168\.90\)----------"
var result = Regex.Replace(text, pattern, "");

String.Replaceしかし、パターンは実際には単なる固定文字列であるため、単純な方法を使用する方がわずかに効率的で簡単です。

var line = "---------- RECOMMENDATION 1 OF 3 IN GROUP 1 (USD 168.90)----------";
var result = text.Replace(line, "");
于 2013-01-28T11:29:23.287 に答える
0

正確な行を削除したい場合、正規表現を使用する必要はありません。通常、正規表現はパターンの照合に使用されます。それでも、この行に正規表現を使用したい場合は、次のように進めることができます:

---------- RECOMMENDATION 1 OF 3 IN GROUP 1 \(USD 168.90\)----------

\(に追加することを忘れないでください)

于 2013-01-28T11:33:02.850 に答える