数値を含む文字列を効果的に置き換えるコードを探しています。しかし、数字はそれをよりよく説明するためにファイルの乱数を含む文字列を置き換えます。
など....のいずれかまたはイン間だから、2刻みで0.50
と2.20
0.50
、0.52
、0.62
することができ、私のプログラムは、設定(テキスト)で行を置き換えていますファイル。ここでは、プログラムの他の部分にどのように使用したかの例を示します。これはトラックバーコントロールにリンクされているため、単一の選択された値で数百の異なる値を検索することを意味しますが、もちろん非常に非効率的です。私は値を置き換えるより効率的な方法を探しています。ここで3つの可能な値のいずれかを挿入する前の例である:
ReWriteFile = ReWriteFile
.Replace(" clipmapScale:r=0.5", " clipmapScale:r=1.5")
.Replace(" clipmapScale:r=1", " clipmapScale:r=1.5");
この制御は、3つの可能な値(0.5、1.0、1.5)を有していたが、私の他のコントロールは、85の可能な値を有しています。
文字列から数字を取得して置き換えて書き戻す方法がある場合は、私はちょうどそれを学ぶようになったので、私はC#に流暢ではありません(Uni学生ここ)。
[0-9、。、]などの指定された文字列でキャッチするかもしれません。
置き換えのルールは明確ではありません。既存の番号をすべて事前に定義した値に置き換えたいのですか? (0.5または1が両方1.5になる)または違うルールがありますか? – Steve
申し訳ありませんが、私はそれをとてもうまく説明しませんでした。私は以下のリストにある '@" \ d + \。\ d + ";"という形式の値を置き換えたいと思っていました。それを置き換える値は、トラックバーの.Valueプロパティから受け取ります。 私は現時点でこれを持っています: 'string SelectedValue = trkTerrainQualityVal.Value.ToString(); 文字列パターン= @ "\ d + \。\ d +"; string search = "clipmapScale:r ="; var m = Regex.Replace(検索、パターン、SelectedValue); ' – Lewis