Esempio n. 1
0
        public Match Match()
        {
            try
            {
                var match = Reg.Match(Input ?? string.Empty, _matchStartAt);
                if (match.Success)
                {
                    _matchStartAt = match.Index + match.Length;

                    AddMatchData(match);

                    Result = match.Value;
                }
                else
                {
                    _matchStartAt = 0;
                }

                return(match);
            }
            catch (Exception ex)
            {
                Logger.Error("正则执行失败", ex);
                NotifyWin.Warn("执行失败:" + ex.Message);
                return(null);
            }
        }
Esempio n. 2
0
 public bool IsMatch()
 {
     try
     {
         var result = Reg.IsMatch(Input ?? string.Empty);
         Result = result.ToString();
         return(result);
     }
     catch (Exception ex)
     {
         Logger.Error("正则执行失败", ex);
         NotifyWin.Warn("执行失败:" + ex.Message);
         return(false);
     }
 }
Esempio n. 3
0
 public string Replace()
 {
     try
     {
         Matches();
         Result = Reg.Replace(Input ?? string.Empty, Repalcement ?? string.Empty);
         return(Result);
     }
     catch (Exception ex)
     {
         Logger.Error("正则执行失败", ex);
         NotifyWin.Warn("执行失败:" + ex.Message);
         return(null);
     }
 }
Esempio n. 4
0
 public Regex Init(RegexOptions options)
 {
     try
     {
         Options = options;
         Result  = string.Empty;
         MatchData.Clear();
         Reg = new Regex(Pattern ?? string.Empty, Options);
     }
     catch (Exception ex)
     {
         Logger.Error("正则初始化失败", ex);
         NotifyWin.Warn("初始化失败:" + ex.Message);
     }
     return(Reg);
 }
Esempio n. 5
0
 public string[] Split()
 {
     try
     {
         Matches();
         var result = Reg.Split(Input ?? string.Empty);
         Result = string.Join(Environment.NewLine, result);
         return(result);
     }
     catch (Exception ex)
     {
         Logger.Error("正则执行失败", ex);
         NotifyWin.Warn("执行失败:" + ex.Message);
         return(null);
     }
 }
Esempio n. 6
0
        public MatchCollection Matches()
        {
            try
            {
                var matches = Reg.Matches(Input ?? string.Empty);

                for (int n = 0; n < matches.Count; n++)
                {
                    var match = matches[n];
                    AddMatchData(match);
                }

                Result = string.Join(Environment.NewLine, matches.Cast <Match>().Select(m => m.Value));

                return(matches);
            }
            catch (Exception ex)
            {
                Logger.Error("正则执行失败", ex);
                NotifyWin.Warn("执行失败:" + ex.Message);
                return(null);
            }
        }
Esempio n. 7
0
        public void LoadMainMenu()
        {
            try
            {
#if DEBUG
                /*
                 * var json = @"
                 * [
                 * {
                 * 'Id': 'iOffice10',
                 * 'Header': 'iOffice10'
                 * },
                 * {
                 * 'Id': 'RevCleaner',
                 * 'Parent': 'iOffice10',
                 * 'Header': '补丁文件清理',
                 * 'ClassName': 'RevCleanerCtrl'
                 * },
                 * {
                 * 'Id': 'MongoSync',
                 * 'Parent': 'iOffice10',
                 * 'Header': 'MongoDB同步',
                 * 'ClassName': 'MongoSyncCtrl'
                 * },
                 * {
                 * 'Id': 'VersionFile',
                 * 'Parent': 'iOffice10',
                 * 'Header': '版本文件生成',
                 * 'ClassName': 'VersionFileCtrl'
                 * },
                 * {
                 * 'Id': 'WebsiteMklink',
                 * 'Parent': 'iOffice10',
                 * 'Header': '站点文件映射',
                 * 'ClassName': 'WebsiteMklinkCtrl'
                 * },
                 * {
                 * 'Id': 'ConfigManager',
                 * 'Parent': 'iOffice10',
                 * 'Header': '配置文件管理*',
                 * 'ClassName': 'ConfigManagerCtrl'
                 * },
                 * {
                 * 'Id': 'ScriptManager',
                 * 'Parent': 'iOffice10',
                 * 'Header': '常用脚本管理*',
                 * 'ClassName': 'ScriptManagerCtrl'
                 * },
                 * {
                 * 'Id': 'ChangesetGetter',
                 * 'Header': '变更集抽取*',
                 * 'ClassName': 'ChangesetGetterCtrl',
                 * 'Visible': true
                 * },
                 * {
                 * 'Id': 'RegexNet',
                 * 'Header': '正则表达式',
                 * 'ClassName': 'RegexNetCtrl'
                 * }
                 * ]
                 * ";
                 * var nodes = JsonConvert.DeserializeObject<List<MenuNode>>(json);*/
                var nodes = ReadSetting(nameof(MainMenu), new List <MenuNode>());
#else
                var nodes = ReadSetting(nameof(MainMenu), new List <MenuNode>());
#endif
                foreach (var item in nodes)
                {
                    MainMenu.Add(item);
                }
                if (!MainMenu.Any())
                {
                    NotifyWin.Warn("主菜单无数据");
                }
                else
                {
                    StartOn = MainMenu.Where(m => m.StartOn).ToList();
                }
            }
            catch (Exception ex)
            {
                Logger.Error("加载主菜单错误", ex);
                NotifyWin.Error("加载主菜单错误:" + ex.Message);
            }
        }
Esempio n. 8
0
 public static void NotifyWarn(string msg, string title = "警告")
 {
     DispatcherInvoke(() => { NotifyWin.Warn(msg, title); });
 }