ParseVar() public method

public ParseVar ( string line ) : string
line string
return string
示例#1
0
        /// <summary>
        /// </summary>
        public string ParseVar(string line)
        {
            foreach (string s in vars.Keys)
            {
                line = line.Replace(s, vars[s].Value);
            }

            if (other != null)
            {
                return(other.ParseVar(line));
            }

            return(line);
        }
示例#2
0
        /// <summary>
        /// </summary>
        public static string ReadLine(StreamReader sr, VarCollection vars)
        {
            string line = "";

            while (true)
            {
                do                 // get a good line - not a comment or empty string
                {
                    if (sr.Peek() != -1)
                    {
                        line = sr.ReadLine().Trim();
                    }
                    else
                    {
                        return(null);
                    }
                }while (line.Length == 0 || line[0] == '#');

                if (line[0] == '$')                 // cache variable, get another line
                {
                    int    idx = line.IndexOf(Separator);
                    string var = line.Substring(0, idx);
                    string val = line.Substring(idx + 1);
                    vars[var] = val;
                }
                else                 // got a line
                {
                    break;
                }
            }

            if (line.IndexOf("$") > 0)             // replace any variables the line might have
            {
                line = vars.ParseVar(line);
            }

            return(line);
        }
		public static string ReadLine(StreamReader sr, VarCollection vars)
		{
			string line = "";

			while (true)
			{
				do //get a good line - not a comment or empty string
				{
					if (sr.Peek() != -1)
						line = sr.ReadLine().Trim();
					else
						return null;
				} while (line.Length == 0 || line[0] == '#');

				if (line[0] == '$') //cache variable, get another line
				{
					int idx = line.IndexOf(Separator);
					string var = line.Substring(0, idx);
					string val = line.Substring(idx + 1);
					vars[var] = val;
				}
				else //got a line
					break;
			}

			if (line.IndexOf("$") > 0) //replace any variables the line might have
				line = vars.ParseVar(line);

			return line;
		}