【问题标题】:VB.Net / C# Spintax help?VB.Net / C# Spintax 帮助?
【发布时间】:2011-12-02 16:22:54
【问题描述】:

谁能给我一个用于 C#/VB.NET 编程语言的 spintax sn-p 示例。如果您不知道那是什么(spintax),那么基本上它是一种放置不同字符串值然后随机选择一个的方法。例如:

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

它会在 { } 使用分隔符 | 分隔 {} 字符串内的这些字符串之间进行选择所以它随机输出最终的字符串。

【问题讨论】:

  • 我不是反对者,但是 - 你真的应该自己尝试一下并提供一些代码。如果你不尝试,这里的人一般不会为你写。通过 5-10 分钟的谷歌搜索,这不会太难弄清楚。 :p

标签: c# .net vb.net spintax


【解决方案1】:

这是一个用于处理 sn-p 的 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/

【讨论】:

  • 完整的文章不再可用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-02
  • 2023-03-29
相关资源
最近更新 更多