﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-似曾相识-随笔分类-经验技巧</title><link>http://www.cnitblog.com/timesite/category/3475.html</link><description>无论我们隔得多远，我离你都只是一个转身的距离... </description><language>zh-cn</language><lastBuildDate>Thu, 29 Sep 2011 10:05:49 GMT</lastBuildDate><pubDate>Thu, 29 Sep 2011 10:05:49 GMT</pubDate><ttl>60</ttl><item><title>正则表达式应用技巧5则</title><link>http://www.cnitblog.com/timesite/archive/2008/02/28/40229.html</link><dc:creator>似曾相识</dc:creator><author>似曾相识</author><pubDate>Thu, 28 Feb 2008 00:57:00 GMT</pubDate><guid>http://www.cnitblog.com/timesite/archive/2008/02/28/40229.html</guid><wfw:comment>http://www.cnitblog.com/timesite/comments/40229.html</wfw:comment><comments>http://www.cnitblog.com/timesite/archive/2008/02/28/40229.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/timesite/comments/commentRss/40229.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/timesite/services/trackbacks/40229.html</trackback:ping><description><![CDATA[<p>【1】正则表达式应用——替换指定内容到行尾<br>原始文本如下面两行<br>abc aaaaa<br>123 abc 444</p>
<p>希望每次遇到&#8220;abc&#8221;，则替换&#8220;abc&#8221;以及其后到行尾的内容为&#8220;abc efg&#8221;<br>即上面的文本最终替换为：<br>abc efg<br>123 abc efg</p>
<p>解决：<br>① 在替换对话框，查找内容里输入&#8220;abc.*&#8221;<br>② 同时勾选&#8220;正则表达式&#8221;复选框，然后点击&#8220;全部替换&#8221;按钮<br>其中，符号的含义如下：<br>&#8220;.&#8221; ＝匹配任意字符<br>&#8220;*&#8221; ＝匹配0次或更多</p>
<p>注意：其实就是正则表达式替换，这里只是把一些曾经提出的问题加以整理，单纯从正则表达式本身来说，就可以引申出成千上万种特例。</p>
<p>【2】正则表达式应用——数字替换 （<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#77;&#105;&#99;&#114;&#111;&#115;&#104;&#97;&#111;&#102;&#116;&#64;&#67;&#67;&#70;&#44;&#106;&#105;&#117;&#107;&#50;&#107;&#64;&#67;&#67;&#70;">Microshaoft@CCF,jiuk2k@CCF</a>）<br>希望把<br>asdadas123asdasdas456asdasdasd789asdasd<br>替换为:<br>asdadas[123]asdasdas[456]asdasdasd[789]asdasd</p>
<p>在替换对话框里面，勾选&#8220;正则表达式&#8221;复选框；<br>在查找内容里面输入&#8220;[0-9][0-9][0-9]&#8221;，不含引号<br>&#8220;替换为:&#8221;里面输入&#8220;[\0\1\2]&#8221;，不含引号<br>范围为你所操作的范围，然后选择替换即可。</p>
<p>实际上这也是正则表达式的使用特例，&#8220;[0-9]&#8221;表示匹配0～9之间的任何特例，同样&#8220;[a-z]&#8221;就表示匹配a～z之间的任何特例<br>上面重复使用了&#8220;[0-9]&#8221;，表示连续出现的三个数字<br>&#8220;\0&#8221;代表第一个&#8220;[0-9]&#8221;对应的原型，&#8220;\1&#8221;代表第二个&#8220;[0-9]&#8221;对应的原型，依此类推<br>&#8220;[&#8221;、&#8220;]&#8221;为单纯的字符，表示添加&#8220;[&#8221;或&#8220;]&#8221;，如果输入&#8220;其它\0\1\2其它&#8221;，则替换结果为：</p>
<p>asdadas其它123其它asdasdas其它456其它asdasdasd其它789其它asdasd</p>
<p>功能增强（by <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#106;&#105;&#117;&#107;&#50;&#107;&#64;&#67;&#67;&#70;">jiuk2k@CCF</a>）：<br>如果将查找内容&#8220;[0-9][0-9][0-9]&#8221;改为&#8220;[0-9]*[0-9]&#8221;，对应1 或 123 或 12345 或 ...<br>大家根据需要定制</p>
<p>相关内容还有很多，可以自己参考正则表达式的语法仔细研究一下</p>
<p>【3】正则表达式应用——删除每一行行尾的指定字符 <br>因为这几个字符在行中也是出现的,所以肯定不能用简单的替换实现<br>比如<br>12345 1265345<br>2345<br>需要删除每行末尾的&#8220;345&#8221;<br>这个也算正则表达式的用法，其实仔细看正则表达式应该比较简单，不过既然有这个问题提出，说明对正则表达式还得有个认识过程，解决方法如下<br>解决：<br>在替换对话框中，启用&#8220;正则表达式&#8221;复选框<br>在查找内容里面输入&#8220;345$&#8221;<br>这里&#8220;$&#8221;表示从行尾匹配</p>
<p>如果从行首匹配，可以用&#8220;^&#8221;来实现，不过 EditPlus 有另一个功能可以很简单的删除行首的字符串<br>a. 选择要操作的行<br>b. 编辑－格式－删除行注释<br>c. 在弹出对话框里面输入要清除的行首字符，确定</p>
<p>【4】正则表达式应用——替换带有半角括号的多行<br>几百个网页中都有下面一段代码：<br>&lt;script LANGUAGE="JavaScript1.1"&gt;<br>&lt;!--<br>htmlAdWH('93163607', '728', '90');<br>//--&gt;<br>&lt;/SCRIPT&gt;<br>我想把它们都去掉，可是找了很多search &amp; replace的软件，都是只能对&#8220;一行&#8221;进行操作。 </p>
<p>EditPlus 打开几百个网页文件还是比较顺畅的，所以完全可以胜任这个工作。<br>具体解决方法，在 Editplus 中使用正则表达式，由于&#8220;(&#8221;、&#8220;)&#8221;被用做预设表达式（或者可以称作子表达式）的标志，所以查找<br>&#8220;&lt;script LANGUAGE="JavaScript1.1"&gt;\n&lt;!--\nhtmlAdWH('93163607', '728', '90'.);\n//--&gt;\n&lt;/SCRIPT&gt;\n&#8221;<br>时会提示查找不到，所以也就无法进行替换了，这时可以把&#8220;(&#8221;、&#8220;)&#8221;使用任意字符标记替代，即半角句号：&#8220;.&#8221;。替换内容为<br>&lt;script LANGUAGE="JavaScript1.1"&gt;\n&lt;!--\nhtmlAdWH.'93163607', '728', '90'.;\n//--&gt;\n&lt;/SCRIPT&gt;\n<br>在替换对话框启用&#8220;正则表达式&#8221;选项，这时就可以完成替换了</p>
<p>补充：（<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#108;&#117;&#99;&#105;&#100;&#97;&#64;&#68;&#82;&#76;">lucida@DRL</a>）<br>对( ) 这样的特殊符号，应该用\( \)来表示，这也是很标准的regexp语法，可以写为<br>&lt;script LANGUAGE="JavaScript1.1"&gt;\n&lt;!--\nhtmlAdWH\('93163607', '728', '90'\);\n//--&gt;\n&lt;/SCRIPT&gt;\n</p>
<p>【5】正则表达式应用——删除空行<br>启动EditPlus，打开待处理的文本类型文件。<br>①、选择&#8220;查找&#8221;菜单的&#8220;替换&#8221;命令，弹出文本替换对话框。选中&#8220;正则表达式&#8221;复选框，表明我们要在查找、替换中使用正则表达式。然后，选中&#8220;替换范围&#8221;中的&#8220;当前文件&#8221;，表明对当前文件操作。<br>②、单击&#8220;查找内容&#8221;组合框右侧的按钮，出现下拉菜单。<br>③、下面的操作添加正则表达式，该表达式代表待查找的空行。（技巧提示：空行仅包括空格符、制表符、回车符，且必须以这三个符号之一作为一行的开头，并且以回车符结尾，查找空行的关键是构造代表空行的正则表达式）。<br>直接在"查找"中输入正则表达式&#8220;^[ \t]*\n&#8221;，注意\t前有空格符。<br>（1）选择&#8220;从行首开始匹配&#8221;，&#8220;查找内容&#8221;组合框中出现字符&#8220;^&#8221;，表示待查找字符串必须出现在文本中一行的行首。<br>（2）选择&#8220;字符在范围中&#8221;，那么在&#8220;^&#8221;后会增加一对括号&#8220;[]&#8221;，当前插入点在括号中。括号在正则表达式中表示，文本中的字符匹配括号中任意一个字符即符合查找条件。<br>（3）按一下空格键，添加空格符。空格符是空行的一个组成成分。<br>（4）选择&#8220;制表符&#8221;，添加代表制表符的&#8220;\t&#8221;。<br>（5）移动光标，将当前插入点移到&#8220;]&#8221;之后，然后选择&#8220;匹配 0 次或更多&#8221;，该操作会添加星号字符&#8220;*&#8221;。星号表示，其前面的括号&#8220;[]&#8221;内的空格符或制表符，在一行中出现0个或多个。<br>（6）选择&#8220;换行符&#8221;，插入&#8220;\n&#8221;，表示回车符。<br>④、&#8220;替换为&#8221;组合框保持空，表示删除查找到的内容。单击&#8220;替换&#8221;按钮逐个行删除空行，或单击&#8220;全部替换&#8221;按钮删除全部空行（注意：EditPlus有时存在&#8220;全部替换&#8221;不能一次性完全删除空行的问题，可能是程序BUG，需要多按几次按钮）。<br></p>
<img src ="http://www.cnitblog.com/timesite/aggbug/40229.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/timesite/" target="_blank">似曾相识</a> 2008-02-28 08:57 <a href="http://www.cnitblog.com/timesite/archive/2008/02/28/40229.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>2000/XP 下的图形界面的 IPCONFIG</title><link>http://www.cnitblog.com/timesite/archive/2006/08/03/14589.html</link><dc:creator>似曾相识</dc:creator><author>似曾相识</author><pubDate>Thu, 03 Aug 2006 01:04:00 GMT</pubDate><guid>http://www.cnitblog.com/timesite/archive/2006/08/03/14589.html</guid><wfw:comment>http://www.cnitblog.com/timesite/comments/14589.html</wfw:comment><comments>http://www.cnitblog.com/timesite/archive/2006/08/03/14589.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/timesite/comments/commentRss/14589.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/timesite/services/trackbacks/14589.html</trackback:ping><description><![CDATA[
		<p>　2000/XP 下的图形界面的 IPCONFIG，适用于 2000/XP 图形界面的 IPConfig，微软出品，Silence 汉化。<br /><br /></p>
		<p align="left">　<img src="http://www.cnitblog.com/images/cnitblog_com/timesite/3388/o_wntipcfg.jpg" /></p>
		<p align="center">
		</p>
		<p align="left">Silence 工具箱 下载页面：<a href="http://www.mympc.org/down/1/2006-7-27_18302167223.html">http://www.mympc.org/down/1/2006-7-27_18302167223.html</a><br /><br />本地下载：<a href="/Files/timesite/wntipcfg.rar">http://www.cnitblog.com/Files/timesite/wntipcfg.rar</a><br /><br /></p>
		<p align="center">
				<br />
				<br />
		</p>
<img src ="http://www.cnitblog.com/timesite/aggbug/14589.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/timesite/" target="_blank">似曾相识</a> 2006-08-03 09:04 <a href="http://www.cnitblog.com/timesite/archive/2006/08/03/14589.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>regsvr32 常见应用</title><link>http://www.cnitblog.com/timesite/archive/2006/07/31/14480.html</link><dc:creator>似曾相识</dc:creator><author>似曾相识</author><pubDate>Mon, 31 Jul 2006 05:02:00 GMT</pubDate><guid>http://www.cnitblog.com/timesite/archive/2006/07/31/14480.html</guid><wfw:comment>http://www.cnitblog.com/timesite/comments/14480.html</wfw:comment><comments>http://www.cnitblog.com/timesite/archive/2006/07/31/14480.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/timesite/comments/commentRss/14480.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/timesite/services/trackbacks/14480.html</trackback:ping><description><![CDATA[
		<p>⑴. 取消XP内嵌ZIP文件支持<br />　　regsvr32 /u zipfldr.dll<br />　　regsvr32 zipfldr.dll　　[恢复]</p>
		<p>⑵. 关闭XP多媒体文件预览<br />　　regsvr32 /u shmedia.dll<br />　　regsvr32 shmedia.dll　　[恢复]</p>
		<p>⑶. 禁用图片和传真查看器<br />　　regsvr32 /u shimgvw.dll<br />　　regsvr32 shimgvw.dll　　[恢复]</p>
		<p>⑷. 彻底删除"我的文档"<br />　　regsvr32 /u mydocs.dll<br />　　regsvr32 mydocs.dll　　[恢复]</p>
		<p>⑸. 删除Live Messenger共享文件夹<br />　　regsvr32 /u "C:\Program Files\MSN Messenger\fsshext.dll"<br />　　regsvr32 "C:\Program Files\MSN Messenger\fsshext.dll"　　[恢复]</p>
		<p>⑹. 删除多媒体文件右键(排队、添加到播放列表、复制到CD或设备...)<br />　　regsvr32 /u wmpshell.dll<br />　　regsvr32 wmpshell.dll　　[恢复]<br /><br /></p>
<img src ="http://www.cnitblog.com/timesite/aggbug/14480.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/timesite/" target="_blank">似曾相识</a> 2006-07-31 13:02 <a href="http://www.cnitblog.com/timesite/archive/2006/07/31/14480.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>