【正则问题】如何得到两个Tag之间的文本
有一文本文件如下 
 public   int   Update <$TableName$> ( <$TableName$> Data   data) 
                         { 
                                     int   result   =   0; 
                                     if   (data.ID   ==   0) 
                                     { 
                                                 throw   new   ArgumentException( "用于更新的 <$TableName$> 数据不包含ID信息 "); 
                                     } 
                                     DbCommand   cmd   =   db.GetStoredProcCommand( <$TableNameUpperCase$> _ADD_PROCEDURE_NAME); 
 	             <$Loop$>  
                                     db.AddInParameter(cmd,    " <$ColumnName$>  ",   DbType. <$ColumnDBType$> ,data. <$ColumnName$> ); 
 	             <$LoopEnd$>  
                                     try 
                                     { 
                                                 result   =   db.ExecuteNonQuery(cmd); 
                                     } 
                                     catch   (SqlException   e) 
                                     { 
                                                 throw   new   SqlException( "在执行 <$TableName$> 记录更新时发生数据库异常 ",   e); 
                                     } 
                                     finally    
                                     { 
                                                 cmd.Dispose(); 
                                     }   
                                     return   result; 
                         }   
 需要取出 <$Loop$> 和 <$LoopEnd$> 之间的文本,应该怎么实现?
------解决方案--------------------正则: <\$Loop\$> (.*?) <\$LoopEnd\$>  
 结果: 
 捕获 1 : 
      <$Loop$>  
             db.AddInParameter(cmd,  " <$ColumnName$>  ", DbType. <$ColumnDBType$> ,data. <$ColumnName$> ); 
 	     <$LoopEnd$>  
 ==============================华丽的分隔线=============================== 
 捕获 1 : 
 组 1 :     
             db.AddInParameter(cmd,  " <$ColumnName$>  ", DbType. <$ColumnDBType$> ,data. <$ColumnName$> );  	     
 ==============================华丽的分隔线========