写了一个简单的语法着色类
来源:互联网 发布:软件项目经理职责 编辑:程序博客网 时间:2024/05/28 14:57
主要功能是把c#的文本代码转换成有颜色的html代码
实在是很笨一个类,只有两种着色模式(把关键字变蓝,把字符串变褐",但还能用...反正挺简单,把源代码也发出来,下面的源代码就是用这个类着色过的
using System;
using System.Text;
using System.Text.RegularExpressions;
namespace d_BlogCodeHelper
{
public class ColorCodes
{
public string Font
{
get { return font; }
set { font = value; }
}
public string FontSize
{
get { return fontSize; }
set { fontSize = value; }
}
public string BlueColor
{
get { return blueColor; }
set { blueColor = value; }
}
public string BrownColor
{
get { return brownColor; }
set { brownColor = value; }
}
public string GreenColor
{
get { return greenColor; }
set { greenColor = value; }
}
public string BrownAndBlueWords(string oldtext)
{
StringBuilder text = new StringBuilder(oldtext);
text.Replace(" ", " ");
text.Replace("<", "<");
text.Replace(">", ">");
text.Replace("/n", "<br/>");
text.Insert(0, "<font face='" + Font + "'><font size='" + FontSize + "'>");
text.Append("</font>");
foreach (string nowWord in blueWords)
{
text.Replace(nowWord, "<font color='#" + blueColor + "'>" + nowWord + "</font>");
}
Regex findString = new Regex("/"(////?.)*?/"");
MatchCollection allStrings = findString.Matches(text.ToString());
foreach (Match oneString in allStrings)
{
text.Replace(oneString.Value, "<font color='#" + brownColor + "'>" + oneString.Value + "</font>");
}
return text.ToString();
}
public string BlueWords(string oldtext)
{
StringBuilder text = new StringBuilder(oldtext);
text.Replace(" ", " ");
text.Replace("<", "<");
text.Replace(">", ">");
text.Replace("/n", "<br/>");
text.Insert(0, "<font face='" + Font + "'><font size='"+FontSize+"'>");
text.Append("</font>");
foreach (string nowWord in blueWords)
{
text.Replace(nowWord, "<font color='#"+blueColor+"'>" + nowWord + "</font>");
}
return text.ToString();
}
private string font = "Tahoma";
private string fontSize="1";
private string blueColor="0000ff";
private string greenColor="008800";
private string brownColor = "a31515";
//下面一个储存所有C#关键字的数组,但是对于在字符串里出现的关键字,这个类处理的还不够好
private string[] blueWords ={ }
}
- 写了一个简单的语法着色类
- 写一个你自己的编辑器 - 第2章:语法着色(上)
- 写了一个简单的ajax操作类
- 写了一个简单的查询/分页类
- 重新写了一个简单的日志类
- 自己写了一个简单的mysql数据库连接类
- 写了一个简单的日期检测工具
- 写了一个简单的AJAX程序
- 写了一个简单的FireFox插件
- 今天写了一个简单的Shell
- 写了一个简单ResideMenu的Demo
- 写了一个简单的数据库连接池
- OSG 一个简单的着色器例子
- opengl一个简单的顶点着色器
- 【Unity Shader】一个简单的着色器
- 写了一个简单的带有CheckBox的Tree[Swing]
- 学了String写的一个简单的小功能。
- 自学的android,写了一个很简单的计算器。
- 用VS2005制作网页对IIS进行操作
- Hashtable排序
- 第六课 向命令中添加参数(翻译)
- 第七课 使用存储过程(翻译)
- 怎么把Listview中的记录前checkbox打钩的记录选出来
- 写了一个简单的语法着色类
- 和依赖的斗争——谈谈使用模式前后的依赖关系变化
- Valentine's Day
- 爆笑RIA-由你来决定布什的相貌!
- C++ Template学习笔记之函数模板(1)——函数模板定义
- 什么是面向对象编程? 转于aben2000
- C++ Template学习笔记之函数模板(2)——函数模板实例化
- C++ Template学习笔记之函数模板(3)——模板实参推演
- SAP 与oracle ERP之比较[转载]