User Tools

Site Tools


my_favorite_extensions
 public static class Extensions
    {
        public static bool Contains(this Enum haystack, object needle)
        {
            int preVal = Convert.ToInt32(haystack);
            return (preVal & (int)needle) > 0;
        }
        public static bool ExtractIfMatch(this String haystack, Regex regex, ref string output)
        {
            bool res = false;
            Match m = regex.Match(haystack);
            if (m.Success)
            {
                output = m.Groups[1].Value;
                res = true;
            }
            return res;
        }
        public static bool ExtractIfMatch(this String haystack, string regExpression, ref string output)
        {
            return haystack.ExtractIfMatch(new Regex(regExpression), ref output);
        }
    }
    public static class MyPath
    {
        public static string GetFullPathWithoutExtension(string path)
        {
            return Path.Combine(Path.GetDirectoryName(path), Path.GetFileNameWithoutExtension(path));
        }
        public static string ExtractAndAddDir(string path, string newdir)
        {
            return Path.Combine(Path.GetDirectoryName(path), newdir);
        }
        public static string CombineDirSubDirAndFile(string path, string newdir, string file)
        {

            return Path.Combine(Path.Combine(path, newdir), Path.GetFileName(file));
        }

    }
my_favorite_extensions.txt · Last modified: 2022/08/09 15:20 (external edit)