コード例 #1
0
        public string Replace(ReplacementState state)
        {
            if (StringToCase.Length == 0)
            {
                return(StringToCase);
            }

            string caseTemplate = state.Match.Groups[CaseTemplateGroupName].Value;

            if (caseTemplate.Length == StringToCase.Length)
            {
                return(OneToOneCase(caseTemplate));
            }
            else if (caseTemplate.Length == 0)
            {
                return(StringToCase);
            }
            else if (caseTemplate.Length == 1)
            {
                if (char.IsUpper(caseTemplate[0]))
                {
                    return(StringToCase.ToUpper());
                }
                else
                {
                    return(StringToCase.ToLower());
                }
            }
            else
            {
                return(BestGuessCase(caseTemplate));
            }
        }
コード例 #2
0
 public string Replace(ReplacementState state)
 {
     return((GroupName == null)
         ? state.Match.Groups[GroupIndex].Value
         : state.Match.Groups[GroupName].Value);
 }