-1

C# / VB.NET プログラミング言語のスピンタックス スニペットの例を教えてください。それが何か(スピンタックス)がわからない場合は、基本的に、文字列にさまざまな値を入れてからランダムに1つを選択する方法です。例えば:

{Hello|Hi|Greetings} my name is {Tom|John|Eaven} and I like {turtles|programming|ping pong}.

そして、{} 文字列内のこれらの文字列を | の区切り文字で分割する { } のいずれかを選択します。そのため、最終的な文字列がランダムに出力されます。

4

1 に答える 1

5

そのスニペットを処理する C# のクラスを次に示します。

public class Spinner
{
    private static Random rnd = new Random();
    public static string Spin(string str)
    {
        string regex = @"\{(.*?)\}";
        return Regex.Replace(str, regex, new MatchEvaluator(WordScrambler));
    }
    public static string WordScrambler(Match match)
    {
        string[] items = match.Value.Substring(1, match.Value.Length - 2).Split('|');
        return items[rnd.Next(items.Length)];
    }
}

そして試してみてください:

Console.WriteLine(Spinner.Spin("{Hello|Greetings|Merhaba} World, My name is {Beaver|Michael} Obama"));

記事全文はこちら: http://jeremy.infinicastonline.com/2010/11/spintax-class-for-c-net/

于 2011-12-02T16:25:00.940 に答える