public string[] ExportOptions( ) { DotNetRegexOptions options = OptionsControl.GetSelectedOptions( ); var json = JsonSerializer.Serialize(options); return(new[] { $"json:{json}" }); }
internal void SetSelectedOptions(DotNetRegexOptions options) { try { ++ChangeCounter; Options = options.Clone( ); DataContext = Options; } finally { --ChangeCounter; } }
public IMatcher ParsePattern(string pattern) { DotNetRegexOptions options = OptionsControl.GetSelectedOptions( ); RegexOptions regex_native_options = options.NativeOptions; TimeSpan timeout = TimeSpan.FromMilliseconds(options.TimeoutMs); if (timeout <= TimeSpan.Zero) { timeout = TimeSpan.FromSeconds(10); } var regex = new Regex(pattern, regex_native_options, timeout); return(new DotNetMatcher(regex)); }
public void ImportOptions(string[] options) { var json = options.FirstOrDefault(o => o.StartsWith("json:"))?.Substring("json:".Length); DotNetRegexOptions options_obj; if (string.IsNullOrWhiteSpace(json)) { options_obj = new DotNetRegexOptions( ); } else { options_obj = JsonSerializer.Deserialize <DotNetRegexOptions>(json); } OptionsControl.SetSelectedOptions(options_obj); }