正規表現で置換ができない への返答
投稿で使用できる特殊コードの説明。(別タブで開きます。)
以下の返答は逆順(新しい順)に並んでいます。
投稿者 xvmmtnk  (中学生)
投稿日時
2011/11/21 17:51:57
です。
Regex.Replace()
を使って、文字の置換をすることが出来ません。
どうすれば、できるようになりますか?
エラーは、
「非共有メンバーを参照するには、オブジェクト参照が必要です。」
別のコード
は実行できます。
Regex.Replace()
を使って、文字の置換をすることが出来ません。
どうすれば、できるようになりますか?
TextBox1.Text = System.Text.RegularExpressions.Regex.Replace(Label4.Text, ",.*")
エラーは、
「非共有メンバーを参照するには、オブジェクト参照が必要です。」
別のコード
While sr.Peek() > -1
Dim rs As String = sr.ReadLine()
If rs.Contains("Structure.Load(") Then
rs = System.Text.RegularExpressions.Regex.Replace(rs, "\s*Structure\.Load\(", "")
rs = System.Text.RegularExpressions.Regex.Replace(rs, "\)\;", "")
rs = map.Replace(Path.GetFileName(map), rs)
bve_structure = rs
End If
End While
は実行できます。
Replaceに正規表現を与える形式では,その正規表現にマッチした物をどう変換するかを記述する必要があるため,引数が3つ必要になります。
MSDN: http://msdn.microsoft.com/ja-jp/library/e7f5w83z(v=VS.90).aspx
http://msdn.microsoft.com/ja-jp/library/e7f5w83z(v=VS.90).aspx
Replaceの引数が2つのものは,Regexクラスのインスタンスを作成して使うための物です。
Regexのインスタンスが正規表現を既に保持しているため,1個引数が不要になります。
MSDN: Replace メソッド (String, String)
http://msdn.microsoft.com/ja-jp/library/xwewhkd1(v=VS.90).aspx