Regex.Replace メソッド (String, String, Int32, Int32)
アセンブリ: System (system.dll 内)

Public Function Replace ( _ input As String, _ replacement As String, _ count As Integer, _ startat As Integer _ ) As String
Dim instance As Regex Dim input As String Dim replacement As String Dim count As Integer Dim startat As Integer Dim returnValue As String returnValue = instance.Replace(input, replacement, count, startat)
public function Replace ( input : String, replacement : String, count : int, startat : int ) : String
戻り値
変更後の文字列。

count が負の場合、置換は文字列の末尾まで継続されます。その他の 2 つの形の置換では、count (-1) および startat (左から右方向の場合は 0、右から左方向の場合は input.Length) に対して既定値が指定されています。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド (String, String, String, RegexOptions)
アセンブリ: System (system.dll 内)

Public Shared Function Replace ( _ input As String, _ pattern As String, _ replacement As String, _ options As RegexOptions _ ) As String
Dim input As String Dim pattern As String Dim replacement As String Dim options As RegexOptions Dim returnValue As String returnValue = Regex.Replace(input, pattern, replacement, options)
public static string Replace ( string input, string pattern, string replacement, RegexOptions options )
public: static String^ Replace ( String^ input, String^ pattern, String^ replacement, RegexOptions options )
public static String Replace ( String input, String pattern, String replacement, RegexOptions options )
public static function Replace ( input : String, pattern : String, replacement : String, options : RegexOptions ) : String
戻り値
変更後の文字列。

静的 Replace メソッドは、正規表現パターンを指定して Regex オブジェクトを構築し、インスタンス メソッド Replace を呼び出す操作と同じです。この静的メソッドは、Regex オブジェクトを明示的に作成しなくても、正規表現を単独で 1 回だけ使用できるようにする目的で用意されています。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド (String, String)
アセンブリ: System (system.dll 内)

Dim instance As Regex Dim input As String Dim replacement As String Dim returnValue As String returnValue = instance.Replace(input, replacement)
戻り値
変更後の文字列。

Regex.Replace メソッドのコード例を次に示します。
' This code example demonstrates the System.Text.Regular- ' Expressions.Regex.Replace(String, String) method. Imports System Imports System.Text.RegularExpressions Class Sample Public Shared Sub Main() ' Create a regular expression that matches a series of one ' or more white spaces. Dim pattern As String = "\s+" Dim rgx As New Regex(pattern) ' Declare a string consisting of text and white spaces. Dim inputStr As String = "a b c d" ' Replace runs of white space in the input string with a ' comma and a blank. Dim outputStr As String = rgx.Replace(inputStr, ", ") ' Display the resulting string. Console.WriteLine("Pattern: ""{0}""", pattern) Console.WriteLine("Input string: ""{0}""", inputStr) Console.WriteLine("Output string: ""{0}""", outputStr) End Sub 'Main End Class 'Sample ' 'This code example produces the following results: ' 'Pattern: "\s+" 'Input string: "a b c d" 'Output string: "a, b, c, d" '
// This code example demonstrates the System.Text.Regular- // Expressions.Regex.Replace(String, String) method. using System; using System.Text.RegularExpressions; class Sample { public static void Main() { // Create a regular expression that matches a series of one // or more white spaces. string pattern = @"\s+"; Regex rgx = new Regex(pattern); // Declare a string consisting of text and white spaces. string inputStr = "a b c d"; // Replace runs of white space in the input string with a // comma and a blank. string outputStr = rgx.Replace(inputStr, ", "); // Display the resulting string. Console.WriteLine("Pattern: \"{0}\"", pattern); Console.WriteLine("Input string: \"{0}\"", inputStr); Console.WriteLine("Output string: \"{0}\"", outputStr); } } /* This code example produces the following results: Pattern: "\s+" Input string: "a b c d" Output string: "a, b, c, d" */

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド (String, MatchEvaluator)
アセンブリ: System (system.dll 内)

Dim instance As Regex Dim input As String Dim evaluator As MatchEvaluator Dim returnValue As String returnValue = instance.Replace(input, evaluator)
戻り値
変更後の文字列。

MatchEvaluator 型は、入力として単一の Match を取得し、文字列を返すデリゲートです。次のように宣言します。

最初に検索対象の文字列を表示し、その文字列からパターンに一致する各単語を検索した後、一致した各単語の先頭文字を大文字に変換して表示するコード例を次に示します。
Imports System.Text.RegularExpressions Class RegExSample Shared Function CapText(m As Match) As String ' Get the matched string. Dim x As String = m.ToString() ' If the first char is lower case... If Char.IsLower(x.Chars(0)) Then ' Capitalize it. Return Char.ToUpper(x.Chars(0)) & x.Substring(1, x.Length - 1) End If Return x End Function Public Shared Sub Main() Dim text As String = "four score and seven years ago" System.Console.WriteLine("text=[" & text & "]") Dim result As String = Regex.Replace(text, "\w+", _ AddressOf RegExSample.CapText) System.Console.WriteLine("result=[" & result & "]") End Sub End Class
using System.Text.RegularExpressions; class RegExSample { static string CapText(Match m) { // Get the matched string. string x = m.ToString(); // If the first char is lower case... if (char.IsLower(x[0])) { // Capitalize it. return char.ToUpper(x[0]) + x.Substring(1, x.Length-1); } return x; } static void Main() { string text = "four score and seven years ago"; System.Console.WriteLine("text=[" + text + "]"); string result = Regex.Replace(text, @"\w+", new MatchEvaluator(RegExSample.CapText)); System.Console.WriteLine("result=[" + result + "]"); } }
#using <System.dll> using namespace System; using namespace System::Text::RegularExpressions; ref class RegExSample { public: static String^ CapText( Match^ m ) { // Get the matched String. String^ x = m->ToString(); // If the first char is lower case... if ( Char::IsLower( x[ 0 ] ) ) { // Capitalize it. return Char::ToUpper( x[ 0 ] ) + x->Substring( 1, x->Length - 1 ); } return x; } }; int main() { String^ text = "four score and seven years ago"; Console::WriteLine( "text=[{0}]", text ); String^ result = Regex::Replace( text, "\\w+", gcnew MatchEvaluator( &RegExSample::CapText ) ); System::Console::WriteLine( "result=[{0}]", result ); }
import System.Text.RegularExpressions.*; class RegExSample { static String CapText(Match m) { // Get the matched string. String x = m.ToString(); // If the first char is lower case... if (System.Char.IsLower(x.charAt(0))) { // Capitalize it. return System.Char.ToUpper(x.charAt(0)) + x.Substring(1, x.get_Length() - 1); } return x; } //CapText public static void main(String[] args) { String text = "four score and seven years ago"; System.Console.WriteLine("text=[" + text + "]"); String result = Regex.Replace(text, "\\w+", new MatchEvaluator(RegExSample.CapText)); System.Console.WriteLine("result=[" + result + "]"); } //main } //RegExSample
import System.Text.RegularExpressions; class RegExSample { static function CapText(m : Match) : String { // get the matched string. var x : String = m.ToString(); // If the first char is lower case... if (System.Char.IsLower(x[0])) { // Capitalize it. return System.Char.ToUpper(x[0]) + x.Substring(1, x.Length-1); } return x; } static function Main() : void { var text : String = "four score and seven years ago"; System.Console.WriteLine("text=[" + text + "]"); var result : String = Regex.Replace(text, "\\w+", RegExSample.CapText); System.Console.WriteLine("result=[" + result + "]"); } } RegExSample.Main();

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド (String, MatchEvaluator, Int32)
アセンブリ: System (system.dll 内)

Public Function Replace ( _ input As String, _ evaluator As MatchEvaluator, _ count As Integer _ ) As String
Dim instance As Regex Dim input As String Dim evaluator As MatchEvaluator Dim count As Integer Dim returnValue As String returnValue = instance.Replace(input, evaluator, count)
戻り値
変更後の文字列。

MatchEvaluator 型は、入力として単一の Match を取得し、文字列を返すデリゲートです。次のように宣言します。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド (String, String, String)
アセンブリ: System (system.dll 内)

Public Shared Function Replace ( _ input As String, _ pattern As String, _ replacement As String _ ) As String
Dim input As String Dim pattern As String Dim replacement As String Dim returnValue As String returnValue = Regex.Replace(input, pattern, replacement)
戻り値
変更後の文字列。

置き換えは置換パターン内でだけ実行できます。正規表現の中で同様の機能を利用するには、\1 などの backreference を使用します。
文字のエスケープと置き換えは、置換パターンで認識される唯一の特殊な構成体です。その他のすべての構文構成体は正規表現だけで使用でき、置換パターンでは認識されません。たとえば、置換パターンが a*${test}b の場合は、文字列 "a*" が挿入され、その後ろに "test" キャプチャ グループと一致する部分文字列 (存在する場合) が続き、さらに文字列 "b" が続きます。* 文字は置換パターン内ではメタ文字として認識されません。同様に、$ パターンも正規表現一致パターン内では認識されません。正規表現内では、$ は文字列の末尾を示します。その他の例として、$123 はグループ番号 123 (10 進数) に一致した最後の部分文字列に置き換えられ、${name) は (?<name>) グループと一致する最後の部分文字列に置き換えられます。
静的 Replace メソッドは、正規表現パターンを指定して Regex オブジェクトを構築し、インスタンス メソッド Replace を呼び出す操作と同じです。この静的メソッドは、Regex オブジェクトを明示的に作成しなくても、正規表現を単独で 1 回だけ使用できるようにする目的で用意されています。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド (String, String, Int32)
アセンブリ: System (system.dll 内)

Public Function Replace ( _ input As String, _ replacement As String, _ count As Integer _ ) As String
Dim instance As Regex Dim input As String Dim replacement As String Dim count As Integer Dim returnValue As String returnValue = instance.Replace(input, replacement, count)
戻り値
変更後の文字列。


Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド (String, String, MatchEvaluator)
アセンブリ: System (system.dll 内)

Public Shared Function Replace ( _ input As String, _ pattern As String, _ evaluator As MatchEvaluator _ ) As String
Dim input As String Dim pattern As String Dim evaluator As MatchEvaluator Dim returnValue As String returnValue = Regex.Replace(input, pattern, evaluator)
public static function Replace ( input : String, pattern : String, evaluator : MatchEvaluator ) : String
戻り値
変更後の文字列。

MatchEvaluator 型は、入力として単一の Match を取得し、文字列を返すデリゲートです。次のように宣言します。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド (String, MatchEvaluator, Int32, Int32)
アセンブリ: System (system.dll 内)

Public Function Replace ( _ input As String, _ evaluator As MatchEvaluator, _ count As Integer, _ startat As Integer _ ) As String
Dim instance As Regex Dim input As String Dim evaluator As MatchEvaluator Dim count As Integer Dim startat As Integer Dim returnValue As String returnValue = instance.Replace(input, evaluator, count, startat)
public function Replace ( input : String, evaluator : MatchEvaluator, count : int, startat : int ) : String
戻り値
変更後の文字列。

MatchEvaluator 型は、入力として単一の Match を取得し、文字列を返すデリゲートです。次のように宣言します。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド (String, String, MatchEvaluator, RegexOptions)
アセンブリ: System (system.dll 内)

Public Shared Function Replace ( _ input As String, _ pattern As String, _ evaluator As MatchEvaluator, _ options As RegexOptions _ ) As String
Dim input As String Dim pattern As String Dim evaluator As MatchEvaluator Dim options As RegexOptions Dim returnValue As String returnValue = Regex.Replace(input, pattern, evaluator, options)
public static string Replace ( string input, string pattern, MatchEvaluator evaluator, RegexOptions options )
public: static String^ Replace ( String^ input, String^ pattern, MatchEvaluator^ evaluator, RegexOptions options )
public static String Replace ( String input, String pattern, MatchEvaluator evaluator, RegexOptions options )
public static function Replace ( input : String, pattern : String, evaluator : MatchEvaluator, options : RegexOptions ) : String
戻り値
変更後の文字列。

MatchEvaluator 型は、入力として単一の Match を取得し、文字列を返すデリゲートです。次のように宣言します。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Regex.Replace メソッド


- Regex.Replaceのページへのリンク