8819


テキストボックス２つとボタン１つの簡単なアプリケーションを作っています。  
textBox1に入力された文字列をボタンを押すと置換されたtextBox2に表示させるだけです。

textBox1に

[code]

    http://example.com/2244/ha/saitama/jfa4w09f.12.jpg
    
[/code]

と入力すると

[code]

    <img src="http://example.com/2244/ha/saitama/jfa4w09f.10.jpg">
    <img src="http://example.com/2244/ha/saitama/jfa4w09f.13.jpg">
    <img src="http://example.com/2244/ha/saitama/jfa4w09f.22.jpg">
    <img src="http://example.com/2244/ha/saitama/jfa4w09f.24.jpg">
    <img src="http://example.com/2244/ha/saitama/jfa4w09f.30.jpg">
    
[/code]

と置換されます。  
ポイントはここです。  
.{10~50までのランダム数字}.jpg  
この10~50までの数字はランダムに足されていきます。

文字列の置換方法を教えて下さい。MSDN公式正規表現サイトを見ても難儀でした。


CC BY-SA 3.0
2015-04-06T08:02:29.243
8816
2015-04-06T08:57:15.983
9184
question
c# 正規表現
VisualC# 文字列の置換


正規表現にマッチした文字列を置換するには、`Regex.Replace` メソッドを使用します。  
例の場合 「ピリオドがあって、１桁以上の数値があって、ピリオドがある。」にマッチさせる正規表現パターンは"`\\.\d+\\.`
ですが、文字列中でエスケープ文字(`\`)を書くために`\\\`にして`"\\\\.\\\d+\\\\."`です。  
`Regex pattern = new Regex("\\\\.\\\d+\\\\.");` で正規表現オブジェクトを作成して  
`pattern.Replace(original, number_string)` で指定した文字列でマッチした部分を別の文字列で置き換えます。

* * *
[code]

    using System;
    using System.IO;
    using System.Text.RegularExpressions;
    
    class replace_sample {
        public static void Main(){
            string original ="http://example.com/2244/ha/saitama/jfa4w09f.12.jpg";
            int ramdom_number = 25;
            string number_string = "." + ramdom_number + ".";
            Regex pattern = new Regex("\\.\\d+\\.");
    
            string result = pattern.Replace(original, number_string);
    
            Console.WriteLine(result);
        }
    }
    
[/code]


CC BY-SA 3.0
2015-04-06T08:32:43.503
8818
2015-04-06T08:38:34.133
2015-04-06T08:38:34.133
5044
5044
8816
answer


よう分からんですが...

こういうことですか？  
replaceの入力：

> "<http://example.com/2244/ha/saitama/jfa4w09f.12.jpg>"

replaceの出力：

> "<http://example.com/2244/ha/saitama/jfa4w09f.16.jpg>"  
>  "<http://example.com/2244/ha/saitama/jfa4w09f.29.jpg>"  
>  "<http://example.com/2244/ha/saitama/jfa4w09f.45.jpg>"  
>  "<http://example.com/2244/ha/saitama/jfa4w09f.50.jpg>"  
>  "<http://example.com/2244/ha/saitama/jfa4w09f.23.jpg>"
[code]

    class Program
    {
        static void Main(string[] args)
        {
            string url ="http://example.com/2244/ha/saitama/jfa4w09f.12.jpg";
    
            var urlList = replace(url);
    
        }
    
        static public List<string> replace(string url)
        {
            Regex r = new Regex(@"^(.*\.)\d+(\.jpg)");
            string prefix = r.Replace(url, @"$1");
            string suffix = r.Replace(url, @"$2");
    
            List<string> urlList = new List<string>();
            Random rnd = new Random();
    
            for (var i = 0; i < 5; i++)
            {
                urlList.Add(prefix + rnd.Next(10, 51).ToString("00") + suffix);
            }
    
            return urlList;
        }
    }
    
[/code]


CC BY-SA 3.0
2015-04-06T08:32:54.350
8819
2015-04-06T08:57:15.983
2015-04-06T08:57:15.983
2383
2383
8816
answer