예제 #1
0
 /** 検索。初回ヒット。
  *
  *      a_assets_path					: 「Assets」からの相対パス。
  *      a_directory_pattern				: ディレクトリ名の正規表現パターン。
  *      a_file_pattern					: ファイル名の正規表現パターン。
  *
  */
 public static string FindFirst(string a_assets_path, string a_directory_pattern, string a_file_pattern)
 {
     System.Text.RegularExpressions.Regex     t_directory_regex = new System.Text.RegularExpressions.Regex(a_directory_pattern, System.Text.RegularExpressions.RegexOptions.Multiline);
     System.Text.RegularExpressions.Regex     t_file_regex      = new System.Text.RegularExpressions.Regex(a_file_pattern, System.Text.RegularExpressions.RegexOptions.Multiline);
     System.Collections.Generic.List <string> t_list            = CreateFileNameListWithAssetsPath.CreateAll(a_assets_path);
     for (int ii = 0; ii < t_list.Count; ii++)
     {
         if (t_file_regex.IsMatch(System.IO.Path.GetFileName(t_list[ii])))
         {
             if (t_directory_regex.IsMatch(System.IO.Path.GetDirectoryName(t_list[ii])))
             {
                 return(t_list[ii]);
             }
         }
     }
     return(null);
 }
예제 #2
0
 /** 検索。すべて。
  *
  *      a_assets_path					: 「Assets」からの相対パス。
  *      a_directory_pattern				: ディレクトリ名の正規表現パターン。
  *      a_file_pattern					: ファイル名の正規表現パターン。
  *
  */
 public static System.Collections.Generic.List <string> FindAll(string a_assets_path, string a_directory_pattern, string a_file_pattern)
 {
     System.Collections.Generic.List <string> t_result = new System.Collections.Generic.List <string>();
     {
         System.Text.RegularExpressions.Regex     t_directory_regex = new System.Text.RegularExpressions.Regex(a_directory_pattern, System.Text.RegularExpressions.RegexOptions.Multiline);
         System.Text.RegularExpressions.Regex     t_file_regex      = new System.Text.RegularExpressions.Regex(a_file_pattern, System.Text.RegularExpressions.RegexOptions.Multiline);
         System.Collections.Generic.List <string> t_list            = CreateFileNameListWithAssetsPath.CreateAll(a_assets_path);
         foreach (string t_item in t_list)
         {
             if (t_file_regex.IsMatch(System.IO.Path.GetFileName(t_item)))
             {
                 if (t_directory_regex.IsMatch(System.IO.Path.GetDirectoryName(t_item)))
                 {
                     t_result.Add(t_item);
                 }
             }
         }
     }
     return(t_result);
 }