您的问题不清楚,因为RichTextBox
没有List
属性。
如果您指的是text
属性,那么我们实际上讨论的是string
。因此,我们需要知道字符串中的数字(它们不是真正的数字,而只是包含数字字符的子字符串)是由哪些字符分隔的。
通常我们使用string.split
拆分这些字符以获得子字符串数组,然后使用random
类从数组中获得随机项。
例如:
private static Random Random = new Random();
// Splits the input string on the splitChar character and returns a random item
public static string GetRandomItem(string input, char splitChar)
{
return GetRandomItem(input, new[] {splitChar});
}
// Splits the input string on all the splitChars characters and returns a random item
public static string GetRandomItem(string input, char[] splitChars)
{
if (string.IsNullOrEmpty(input)) return input;
var items = input.Split(splitChars);
return items[Random.Next(items.Length)];
}
在使用中,它可能看起来像:
// If the items are separated by a newline character:
string randomItem = GetRandomItem(richTextBox.Text, Environment.NewLine.ToCharArray());
// If the items are separated by a comma:
randomItem = GetRandomItem(richTextBox.Text, ',');
如果希望将结果字符串转换为数字,则可以使用适当的tryparse
方法(int.tryparse
,double.tryparse
等)来完成此操作。