/// <summary> /// Gets regular expression text to match the option /// </summary> /// <param name="optionParser">The option parser to get configuration from.</param> /// <returns></returns> public override string GetRegularExpression(OptionParser optionParser) { // Option Delimiter StringBuilder optionDelimiterBuilder = new StringBuilder(); optionDelimiterBuilder.Append("(?<" + OptionParser.PrefixCaptureName + ">["); optionDelimiterBuilder.Append(optionParser.optionDelimiters); optionDelimiterBuilder.Append("])"); String optionDelimiterPattern = optionDelimiterBuilder.ToString(); StringBuilder optionPattern = new StringBuilder(); optionPattern.Append("(^"); optionPattern.Append(optionDelimiterPattern); optionPattern.Append("(?<" + OptionParser.OptionNameCaptureName + ">" + Regex.Escape(keyName) + ")"); optionPattern.Append("(["); optionPattern.Append(optionParser.assignSymbols); optionPattern.Append("]"); optionPattern.Append("(?<" + OptionParser.OptionValueCaptureName + ">(([^ \"]+)|(\"[^\"]+\"))))"); optionPattern.Append(")"); return(optionPattern.ToString()); }
/// <summary> /// Gets regular expression text to match the option /// </summary> /// <param name="optionParser">The option parser to get configuration from.</param> /// <returns></returns> public override string GetRegularExpression(OptionParser optionParser) { // Option Delimiter StringBuilder optionDelimiterBuilder = new StringBuilder(); optionDelimiterBuilder.Append("(?<" + OptionParser.PrefixCaptureName + ">["); optionDelimiterBuilder.Append(optionParser.optionDelimiters); optionDelimiterBuilder.Append("])"); String optionDelimiterPattern = optionDelimiterBuilder.ToString(); StringBuilder optionPattern = new StringBuilder(); optionPattern.Append("(^"); //Line Start optionPattern.Append(optionDelimiterPattern); //Option Delimeter optionPattern.Append("(?<" + OptionParser.OptionNameCaptureName + ">" + Regex.Escape(keyName) + ")"); //Capture matched substring optionPattern.Append(")"); return(optionPattern.ToString()); }
/// <summary> /// Gets regular expression text to match the option /// </summary> /// <param name="optionParser">The option parser to get configuration from.</param> /// <returns></returns> public virtual string GetRegularExpression(OptionParser optionParser) { throw new NotImplementedException(); }