用正则表达式怎么把下面内容全给替换成相应的内容
html数据:(要替换的就是加粗部分)
<p>文本框:
<img src="Control/TextBox.gif" id="demo_17" title="demo_18" alt="文本框提示" /></p>
<p>复选框:
<img src="Control/CheckBox.gif" id="demo_19" title="demo_20" alt="CheckBox" /></p>
<p>上传控件:
<img src="Control/FileUpload.gif" id="demo_23" title="demo_24" alt="FileUpload" />乱七乱八内容:
别墅 时固顶想办法革田枯草地lkdsa翰林进lsad韩国是协调枯草 协调枯萎
<img src="/attached/image/20130111/20130111163050_1332.png" alt="" /></p>
替换规则:
只要
是以<img src="Control 开头的 图片 全进行替换
从上面拿一个出来举列:
<img src="Control/TextBox.gif" id="demo_17" title="demo_18" alt="文本框提示" />
要替换成
<ST:TextBox ID="demo_18" runat="server" ToolTip="文本框提示"></ST:TextBox>
详细拆分说明:
1.<img src="Control/TextBox.gif" 换成 <ST:TextBox
这里的Control/TextBox.gif和<ST:TextBox 是对应的
2.去掉 id="demo_17" 并 增加 runat="server" (或两者用替换的方式)
3.title="demo_18" 换成 ID="demo_18"
4.alt="文本框提示" 换成 ToolTip="文本框提示"
其它控件都用同样的方法
比如
该怎么用正规表达式去替换,请高手指点。。。。
------解决方案--------------------(?is)(?<=<img src=""Control)[^""]+(?="")
------解决方案-------------------- string str = File.ReadAllText("D:\\1.txt", Encoding.Default);
str = Regex.Replace(str, @"(?is)<img(?=[^>]*?src=""Control/([^""\.]+)[^""]*"")(?=[^>]*?title=""([^""]+)"")(?=[^>]*?alt=""([^""]+)"")[^>]*>", "<ST:$1 ID=\"$2\" runat=\"server\" ToolTip=\"$3\"></ST:$1>");