qin
2024-09-28 e358beb08f5be49703009b64f058ecfbcfeefbd9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 
namespace HStation.RevitDev.RevitDataExport.Utility
{
    internal class RegexUtils
    {
        public static string FormatPatternString(string pattern)
        {
            if (string.IsNullOrEmpty(pattern)) { return pattern; }
            string ret = pattern;
   
            ret = ret.Replace("\\", "\\\\");
            ret = ret.Replace("$", "\\$");
            ret = ret.Replace("(", "\\(");
            ret = ret.Replace(")", "\\)");
            ret = ret.Replace("*", "\\*");
            ret = ret.Replace("+", "\\+");
            ret = ret.Replace(".", "\\.");
            ret = ret.Replace("[", "\\[+]");
            ret = ret.Replace("]", "\\]");
            ret = ret.Replace("?", "\\?");
            ret = ret.Replace("^", "\\^");
            ret = ret.Replace("{", "\\{");
            ret = ret.Replace("}", "\\}");
            ret = ret.Replace("|", "\\|");
            ret = "^" + ret + "$";
            return ret;
        }
    }
}