关于正则表达式替换的问题
例如:Moto 刷机工具
我要吧上面的Moto替换成 " <font color=#FF0000> Moto </font> ";
这个正则表达式应该如何写,
要求被替换的单词是用户输入的字符串。
替换之后只是颜色变成了红色。字符的格式不便。
用户可能输入的是 moto 或者 MOTO,
但是原文上面的是首字母大写的。
目的就是要保持原文格式不被改变的情况下。把用户输入的单词变成红色。
各位大侠。帮帮忙!
------解决方案--------------------不需要什么正则 格式不变就不需要对他进行改变 只需要加个颜色代码就行了`
------解决方案--------------------同意楼上,除非用户输入的是关键字,根据这个关键字去全文中检索替换
------解决方案--------------------一般正则表达式主要用于验证与查找,你的情况是在用户输入时进行字符串替换,使用楼上的方法可能是最好的了。
------解决方案--------------------[mM][oO][tT][oO]
---------------------------------------------
EMail:bdbox@163.com 请给我一个与您交流的机会!
------解决方案--------------------除非用户输入的是关键字,根据这个关键字去全文中检索替换
======================================================
我想LZ要的就是这个吧 呵呵
------解决方案--------------------同意1楼的方法,不用正则表达式
------解决方案--------------------string abc = "moto ";
if (abc.Length > 1)
{
abc = abc.Substring(0, 1).ToUpper() + abc.Substring(1, abc.Length - 1).ToLower();
}
else
{
abc = abc.ToUpper();
}
str = str.Replace(abc, " <font color=#FF0000> " + abc + " </font> ");
------解决方案--------------------1楼的方法是不是效率低下啊。如果字符串很多的话呢。
====
你要把问题说清楚,
关于“效率”,是相对的,要看你的应用环境
------解决方案--------------------简单的问题让大家复杂化了很多
尽然说出了效率问题
试问 就一个文本
要求被替换的单词是用户输入的字符串。
所谓单词 能输入出几百上千个字符来么???
哪国的语言单词这么长?