コード例 #1
0
        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            string result          = "";
            var    resultRegExList = new List <string>();

            if (value is List <Tuple <Operation, string> > )
            {
                var regExList = value as List <Tuple <Operation, string> >;

                // if the list contains only ´the initial item
                if (regExList.Count == 0 || (regExList.Count == 1 && regExList.ElementAt(0).Item2 == ""))
                {
                    return(oldValue);
                }

                foreach (var r in regExList)
                {
                    if (r is Tuple <Operation, string> )
                    {
                        var opAndString = r as Tuple <Operation, string>;
                        resultRegExList.Add(RegExUtility.GenerateRegEx(opAndString.Item2, opAndString.Item1));
                    }
                }
                result = RegExUtility.MergeRegEx(resultRegExList);
            }

            return(result);
        }
コード例 #2
0
        private void RegExMetricCriticalGenAdd_Click(object sender, RoutedEventArgs e)
        {
            if (MonitoringIndicatorList.SelectedItem != null)
            {
                RegExUtil.Operation op = RegExOperationConvertBack(this.RegExGenMetricCriticalOp.SelectedItem as string);
                string part            = RegExUtility.GenerateRegEx(RegExGeneratorMetricCritical.Text, op);
                string oldRegEx        = (MonitoringIndicatorList.SelectedItem as Indicator).StatementCritical;

                var mergeList = new List <string>();
                mergeList.Add(oldRegEx);
                mergeList.Add(part);

                (MonitoringIndicatorList.SelectedItem as Indicator).StatementCritical = RegExUtility.MergeRegEx(mergeList);
                RegExGeneratorMetricCritical.Text = "";
            }
        }
コード例 #3
0
        public static void Main(string[] args)
        {
            try
            {
                Console.WriteLine("++++++++++++++++++++++++++++++++");
                Console.WriteLine("+++ RegExUtilTestApplication +++");
                Console.WriteLine("++++++++++++++++++++++++++++++++");
                Console.WriteLine();
                Console.WriteLine("(1) >");
                Console.WriteLine("(2) <");
                Console.WriteLine("(3) =");
                Console.WriteLine("(4) contain");
                Console.WriteLine("(5) not_contain");
                Console.WriteLine();
                Console.WriteLine();

                Console.WriteLine("Choose one Operation: ");
                var key = Console.ReadKey();

                Console.WriteLine();
                Console.WriteLine();
                Console.WriteLine("Enter value: ");
                var value = Console.ReadLine();

                string result = "";
                switch (((ConsoleKeyInfo)key).KeyChar)
                {
                case '1':
                    result = RegExUtility.GenerateRegEx(value, Operation.Major);
                    break;

                case '2':
                    result = RegExUtility.GenerateRegEx(value, Operation.Less);
                    break;

                case '3':
                    result = RegExUtility.GenerateRegEx(value, Operation.Equal);
                    break;

                case '4':
                    result = RegExUtility.GenerateRegEx(value, Operation.Contain);
                    break;

                case '5':
                    result = RegExUtility.GenerateRegEx(value, Operation.NotContain);
                    break;

                default:
                    break;
                }

                if (result != "")
                {
                    Console.WriteLine();
                    Console.WriteLine("Generated RegEx: ");
                    Console.WriteLine(result);

                    Console.WriteLine();
                    Console.WriteLine();
                    Console.WriteLine("++++++++++++++++++++++++++++++++");
                    Console.WriteLine("+++      Test the RegEx      +++");
                    Console.WriteLine("++++++++++++++++++++++++++++++++");

                    while (true)
                    {
                        Console.WriteLine();
                        Console.WriteLine();
                        Console.WriteLine("Enter value: ");
                        var  testValue = Console.ReadLine();
                        bool matched   = Regex.Match(testValue, result).Success;

                        Console.WriteLine("Matched = " + matched);
                    }
                }
                else
                {
                    Console.WriteLine();
                    Console.WriteLine("Operation not implemented...");
                    Console.ReadKey();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(">>> Program unexcepted closed");
                Console.WriteLine(e);
                Console.ReadKey();
            }
        }