All pastes #591564 Raw Edit

Macca

public text v1 · immutable
#591564 ·published 2007-06-27 08:30 UTC
rendered paste body
		private static string HtmlizeWiki(string X)
		{
			string Ret = X;

			int Start = Ret.IndexOf("{|");

			while (Start > -1)
			{
				int Finish = Ret.IndexOf("|}", Start);

				if (Finish == -1) { break; }

				Finish += 2;

				string Left, Table, Right;
				Left = Ret.Substring(0, Start);
				Table = Ret.Substring(Start, (Finish - Start));
				Right = Ret.Substring(Finish);

				Ret = Left + HtmlizeTable(Table) + Right;

				Start = Ret.IndexOf("{|", Finish - 2);
			}

			return Ret;
		}

		private static string HtmlizeTable(string Table)
		{
			string Ret = Table;
			string[] Lines = Ret.Split('\n');
			Ret = string.Empty;
			//int RowCount = 0;

			foreach (string Line in Lines)
			{
				string Text = Line.Trim();
				switch (Text.Substring(0, 2))
				{
					case "{|":
						Ret += "<table" + Text.Substring(2) + "><tr>";
						break;
					case "|}":
						Ret += "</tr></table>";
						break;
					case "|-":
						Ret += "</tr><tr>";
						break;
					case "| ":
						Ret += "<td>" + Text.Substring(2) + "</td>";
						break;
				}
			}

			return Ret;
		}