ENH: Add command to generate random strings

This commit is contained in:
Ken Martin
2007-04-23 11:04:12 -04:00
parent e9361e41f3
commit c4fc2c19c7
2 changed files with 79 additions and 1 deletions

View File

@@ -85,6 +85,7 @@ public:
" STRING(TOLOWER <string1> <output variable>)\n"
" STRING(LENGTH <string> <output variable>)\n"
" STRING(SUBSTRING <string> <begin> <length> <output variable>)\n"
" STRING(RANDOM [LENGTH <length>] [ALPHABET <alphabet>] <output variable>)\n"
"REGEX MATCH will match the regular expression once and store the "
"match in the output variable.\n"
"REGEX MATCHALL will match the regular expression as many times as "
@@ -108,7 +109,11 @@ public:
"a file.\n"
"TOUPPER/TOLOWER will convert string to upper/lower characters.\n"
"LENGTH will return a given string's length.\n"
"SUBSTRING will return a substring of a given string.";
"SUBSTRING will return a substring of a given string.\n"
"RANDOM will return a random string of given length consisting of "
"characters from the given alphabet. Default length is 5 "
"characters and default alphabet is all numbers and upper and "
"lower case letters.";
}
cmTypeMacro(cmStringCommand, cmCommand);
@@ -125,6 +130,7 @@ protected:
bool HandleReplaceCommand(std::vector<std::string> const& args);
bool HandleLengthCommand(std::vector<std::string> const& args);
bool HandleSubstringCommand(std::vector<std::string> const& args);
bool HandleRandomCommand(std::vector<std::string> const& args);
class RegexReplacement
{