Click or drag to resize
RandomStringAlphabeticString Method (IRandom, Int32, Char, Single)
Generates a random string using only letters from the English alphabet, both upper and lower case, plus a separator character which can occur randomly with a specified probability.

Namespace: Experilous.MakeItRandom
Assembly: Assembly-CSharp-firstpass (in Assembly-CSharp-firstpass.dll) Version:
public static string AlphabeticString(
	this IRandom random,
	int length,
	char separator,
	float separatorProbability


Type: Experilous.MakeItRandomIRandom
The pseudo-random engine that will be used to generate bits from which the return value is derived.
Type: SystemInt32
The length of the string to be generated.
Type: SystemChar
The separator character to be randomly inserted into the string according to the probability specified.
Type: SystemSingle
The probability of any specific index in the string being a separator character. Must be in the range [0, 1].

Return Value

Type: String
A random string, with each character being a uniformly random selection from the set of English letters, both upper and lower case.

Usage Note

In Visual Basic and C#, you can call this method as an instance method on any object of type IRandom. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).

The generated string is guaranteed to not start with the separator character, and it is further guaranteed that two separator characters will never be generated one immediately after the other, regardless of the separator probability.

A separator probability of 0 will guarantee that there are no separators at all, while a probability of 1 will guarantee that every second character is a separtor character. Probabilities less than 1 but greater that 0.5 will be biased toward the same every-other character outcome, but will have a chance of generating longer sequences of non-separator characters, rather than being strictly limited to one non-separator character at a time.

See Also