<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_~零度浪漫~</title><subtitle type="text"/><id>http://feed.cnblogs.com/blog/u/52523/rss</id><updated>2012-05-22T09:49:17Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/52523/rss"/><entry><id>http://www.cnblogs.com/myssh/archive/2012/05/22/2513656.html</id><title type="text">css 左右两栏 左边固定右边自适应</title><summary type="text">两个div并排，左边为绝对宽度，右边为相对宽度，这个问题，我也经常遇到，我一般的处理方法是将最大的容器padding-left固定宽度，左边的固定宽度的一块position:absolute，然后right的一块width为百分百今天学习到人家有三种解决方法，转载过来 两个div并排，很容易实现。如何让左边的div为固定宽度，右边的div为相对宽度呢？需要用到这种布局的情况比较多见，如左边为导航，右边为内容的页面。暂时想到了两种实现办法。方法一，使用position:absolute。代码如下。&lt;style&gt;body{ margin:0; height:100%}html{ hei</summary><published>2012-05-22T09:49:00Z</published><updated>2012-05-22T09:49:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2012/05/22/2513656.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2012/05/22/2513656.html"/><content type="html">&lt;div id="cnblogs_post_body"&gt;&lt;div&gt;&lt;p&gt;两个div并排，左边为绝对宽度，右边为相对宽度，这个问题，我也经常遇到，我一般的处理方法是将最大的容器padding-left固定宽度，左边的固定宽度的一块position:absolute，然后right的一块width为百分百&lt;/p&gt;&lt;p&gt;今天学习到人家有三种解决方法，转载过来&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; 两个div并排，很容易实现。如何让左边的div为固定宽度，右边的div为相对宽度呢？需要用到这种布局的情况比较多见，如左边为导航，右边为内容的页面。暂时想到了两种实现办法。&lt;br style="line-height: normal;" /&gt;&lt;strong style="line-height: normal;"&gt;&lt;br style="line-height: normal;" /&gt;方法一&lt;/strong&gt;，使用position:absolute。代码如下。&lt;br style="line-height: normal;" /&gt;&amp;lt;style&amp;gt;&lt;br style="line-height: normal;" /&gt;body{ margin:0; height:100%}&lt;br style="line-height: normal;" /&gt;html{ height:100%} /*兼容firefox的div高度100%*/&lt;br style="line-height: normal;" /&gt;#left{&amp;nbsp;&lt;strong style="line-height: normal;"&gt;position:absolute&lt;/strong&gt;; top:0; left:0; width:200px; height:100%; background-color:#CCCCCC}&lt;br style="line-height: normal;" /&gt;#right{&amp;nbsp;&lt;strong style="line-height: normal;"&gt;margin-left:200px&lt;/strong&gt;; height:100%; background-color:#0099FF}&lt;br style="line-height: normal;" /&gt;&amp;lt;/style&amp;gt;&lt;br style="line-height: normal;" /&gt;&amp;lt;div id="left"&amp;gt;left&amp;lt;/div&amp;gt;&lt;br style="line-height: normal;" /&gt;&amp;lt;div id="right"&amp;gt;right&amp;lt;/div&amp;gt;&lt;br style="line-height: normal;" /&gt;&lt;br style="line-height: normal;" /&gt;这段代码主要涉及到以下两点点比较重要的：&lt;br style="line-height: normal;" /&gt;&lt;strong style="line-height: normal;"&gt;（1）兼容firefox实现div高度100%；&lt;br style="line-height: normal;" /&gt;（2）div绝对定位的妙用；在页面布局的时候，position:absolute如果灵活的应用，可以达到很好的效果。&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;br style="line-height: normal;" /&gt;&lt;strong style="line-height: normal;"&gt;方法二&lt;/strong&gt;&amp;nbsp;&lt;strong style="line-height: normal;"&gt;使用float解决div左右布局，左为绝对宽度，右为相对宽度问题&lt;br style="line-height: normal;" /&gt;&lt;/strong&gt;&amp;lt;style type="text/css"&amp;gt;&lt;br style="line-height: normal;" /&gt;body{ margin:0; height:100% }&lt;br style="line-height: normal;" /&gt;html{ height:100% }&lt;br style="line-height: normal;" /&gt;#left{ width:150px; height:100%; float:left; _margin-right:-3px; background-color: yellow }&lt;br style="line-height: normal;" /&gt;#main{ height:100%; background-color: green }&lt;br style="line-height: normal;" /&gt;&amp;lt;/style&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;div id="left"&amp;gt;&amp;lt;/div&amp;gt;&lt;br style="line-height: normal;" /&gt;&amp;lt;div id="main"&amp;gt;&amp;lt;/div&amp;gt;&lt;/p&gt;&lt;p&gt;&lt;br style="line-height: normal;" /&gt;&lt;br style="line-height: normal;" /&gt;&lt;strong style="line-height: normal;"&gt;方法三&lt;/strong&gt;，代码如下。方法二可能没有按照题目要求，但是可以达到一样的页面效果。主要是使用了div的float属性。&lt;br style="line-height: normal;" /&gt;&amp;lt;style&amp;gt;&lt;br style="line-height: normal;" /&gt;body{ margin:0; height:100%}&lt;br style="line-height: normal;" /&gt;html{ height:100%} /*兼容firefox的div高度100%*/&lt;br style="line-height: normal;" /&gt;#left{ width:200px; height:100%; background-color:#CCCCCC; float:left}&lt;br style="line-height: normal;" /&gt;#main{ width:100%; height:100%; background-color:#0099FF}&lt;br style="line-height: normal;" /&gt;&amp;lt;/style&amp;gt;&lt;br style="line-height: normal;" /&gt;&amp;lt;div id="main"&amp;gt;&lt;br style="line-height: normal;" /&gt;&amp;lt;div id="left"&amp;gt;left&amp;lt;/div&amp;gt;&lt;br style="line-height: normal;" /&gt;Right&lt;br style="line-height: normal;" /&gt;&amp;lt;/div&amp;gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2513656.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2012/05/22/2513656.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myssh/archive/2012/04/19/2457761.html</id><title type="text">Oracle 执行长SQL</title><summary type="text">遇到非常长的SQL语句无法执行该怎么办呢？看下面的解决办法：/*-----------------------------------|执行长SQL，如参数、值非常大----------------------------------------*/CREATE OR REPLACE PROCEDURE SP_EXECUTELOG(SSQL IN VARCHAR2, SLONG IN CLOB) ISBEGIN EXECUTE IMMEDIATE SSQL USING SLONG; COMMIT;END SP_EXECUTELOG;--使用方式CREATE TABLE TEMPT...</summary><published>2012-04-19T11:40:00Z</published><updated>2012-04-19T11:40:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2012/04/19/2457761.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2012/04/19/2457761.html"/><content type="html">&lt;p&gt;遇到非常长的SQL语句无法执行该怎么办呢？看下面的解决办法：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #008080;"&gt;/*&lt;/span&gt;&lt;span style="color: #008080;"&gt;-----------------------------------&lt;br/&gt;|执行长SQL，如参数、值非常大&lt;br/&gt;----------------------------------------&lt;/span&gt;&lt;span style="color: #008080;"&gt;*/&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;CREATE&lt;/span&gt; &lt;span style="color: #808080;"&gt;OR&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;REPLACE&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;PROCEDURE&lt;/span&gt; SP_EXECUTELOG(SSQL &lt;span style="color: #808080;"&gt;IN&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;VARCHAR2&lt;/span&gt;, SLONG &lt;span style="color: #808080;"&gt;IN&lt;/span&gt; CLOB) &lt;span style="color: #0000ff;"&gt;IS&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;BEGIN&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff;"&gt;EXECUTE&lt;/span&gt;&lt;span style="color: #000000;"&gt; IMMEDIATE SSQL&lt;br/&gt;    USING SLONG;&lt;br/&gt;  &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;COMMIT&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;END&lt;/span&gt;&lt;span style="color: #000000;"&gt; SP_EXECUTELOG;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt;使用方式&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;CREATE&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;TABLE&lt;/span&gt;&lt;span style="color: #000000;"&gt; TEMPTABLE&lt;br/&gt;(&lt;br/&gt; ID &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;NUMBER&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;br/&gt; &lt;/span&gt;&lt;span style="color: #ff00ff;"&gt;STR&lt;/span&gt;&lt;span style="color: #000000;"&gt; CLOB&lt;br/&gt;)&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt;------------示例1，普通方式----------------------------&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;BEGIN&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br/&gt;SP_EXECUTELOG(&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;INSERT INTO TEMPTABLE(ID,STR) VALUES(1,:STR)&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;,TO_CLOB(&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;14&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #000000;"&gt;));&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;END&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt;------------示例2，引号嵌套类型----------------------------&lt;/span&gt;&lt;br/&gt;&lt;span style="color: #0000ff;"&gt;DECLARE&lt;/span&gt;&lt;span style="color: #000000;"&gt; &lt;br/&gt; SQLSTR &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;VARCHAR2&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;32767&lt;/span&gt;):&lt;span style="color: #808080;"&gt;=&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;UPDATE T_TABLE&lt;br/&gt;   SET INETWORKTYPE_ID      = 1,&lt;br/&gt;       SWHERERULES_CN       = &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;,&lt;br/&gt;       IUSERID              = 2804,&lt;br/&gt;       DUPDATEDATE          = TO_DATE(&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;2012-04-19&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;, &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;YYYY-MM-DD&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;),&lt;br/&gt;       SPERFTYPE            = &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;PERF_GSMCELL&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;,&lt;br/&gt;       SSQL                 = :STR&lt;br/&gt; WHERE STEMPLATEID = &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;37606&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'''&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br/&gt; VAL CLOB:&lt;/span&gt;&lt;span style="color: #808080;"&gt;=&lt;/span&gt;TO_CLOB(&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;SELECT TO_CHAR(DDATE, &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt; YYYY &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;) Y&lt;br/&gt;  FROM TABLE&lt;br/&gt; WHERE DDATE &amp;gt;= (SYSDATE - INTERVAL &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt; 1 &lt;/span&gt;&lt;span style="color: #ff0000;"&gt;''''&lt;/span&gt;&lt;span style="color: #ff0000;"&gt; YEAR)&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #000000;"&gt;);&lt;br/&gt;&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;BEGIN&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br/&gt;SP_EXECUTELOG(SQLSTR,VAL);&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;END&lt;/span&gt;;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2457761.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2012/04/19/2457761.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myssh/archive/2012/04/17/2453112.html</id><title type="text">MyEclipse 批量更新编码集</title><summary type="text">经常遇到导入项目之后js文件或者class文件中中文乱码的现象，经过尝试比较好的办法为：选择项目，选择菜单Window-Preferences-General-Content Types，找到相应的乱码文件类型，更改编码集之后进行Update，如图：</summary><published>2012-04-17T01:21:00Z</published><updated>2012-04-17T01:21:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2012/04/17/2453112.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2012/04/17/2453112.html"/><content type="html">&lt;p&gt;经常遇到导入项目之后js文件或者class文件中中文乱码的现象，经过尝试比较好的办法为：选择项目，选择菜单Window-Preferences-General-Content Types，&lt;/p&gt;&lt;p&gt;找到相应的乱码文件类型，更改编码集之后进行Update，如图：&lt;/p&gt;&lt;p&gt;&lt;img src="http://pic002.cnblogs.com/images/2012/48929/2012041709194888.png" alt="" /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2453112.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2012/04/17/2453112.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myssh/archive/2012/04/16/2451557.html</id><title type="text">Oracle 游标基础</title><summary type="text">游标是什么: 游标字面理解就是游动的光标。 用数据库语言来描述:游标是映射在结果集中一行数据上的位置实体，有了游标用户就可以访问结果集中的任意一行数据了，将游标放置到某行后，即可对该行数据进行操作，例如提取当前行的数据等等。 游标的分类: 显式游标和隐式游标 显示游标的使用需要4步: 1.声明游标 CURSOR mycur(vartype number) is select emp_no,emp_zc from cus_emp_basic where com_no = vartype; 2.打开游标 open mycur(000627) 注:000627:参数 3.读...</summary><published>2012-04-16T04:46:00Z</published><updated>2012-04-16T04:46:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2012/04/16/2451557.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2012/04/16/2451557.html"/><content type="html">&lt;p&gt;　&lt;strong&gt;游标是什么:&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;游标字面理解就是游动的光标。&lt;/p&gt;&lt;p&gt;用数据库语言来描述:游标是映射在结果集中一行数据上的位置实体，有了游标用户就可以访问结果集中的任意一行数据了，将游标放置到某行后，即可对该行数据进行操作，例如提取当前行的数据等等。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;游标的分类:&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;显式游标和隐式游标&lt;/p&gt;&lt;p&gt;显示游标的使用需要4步:&lt;/p&gt;&lt;p&gt;1.声明游标&lt;/p&gt;&lt;p&gt;CURSOR mycur(vartype number) is&lt;/p&gt;&lt;p&gt;select emp_no,emp_zc from cus_emp_basic&lt;/p&gt;&lt;p&gt;where com_no = vartype;&lt;/p&gt;&lt;p&gt;2.打开游标&lt;/p&gt;&lt;p&gt;open mycur(000627) 注:000627:参数&lt;/p&gt;&lt;p&gt;3.读取数据&lt;/p&gt;&lt;p&gt;fetch mycur into varno,varprice;&lt;/p&gt;&lt;p&gt;4.关闭游标&lt;/p&gt;&lt;p&gt;close mycur;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;游标的属性：&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;oracle 游标有4个属性: %ISOPEN ， %FOUND ， %NOTFOUND， %ROWCOUNT&lt;/p&gt;&lt;p&gt;%ISOPEN 判断游标是否被打开，如果打开%ISOPEN 等于true,否则等于false&lt;/p&gt;&lt;p&gt;%FOUND %NOTFOUND 判断游标所在的行是否有效，如果有效，则%FOUNDD等于true，否则等于false&lt;/p&gt;&lt;p&gt;%ROWCOUNT 返回当前位置为止游标读取的记录行数。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Oracle游标循环&lt;/strong&gt; &lt;br /&gt;&lt;strong&gt;第一种使用loop 循环&lt;/strong&gt;&lt;br /&gt;open c_postype;&lt;br /&gt;loop&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; fetch c_postype into v_postype,v_description ;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; exit when c_postype%notfound;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;hellip;&amp;hellip;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;end loop&amp;nbsp;&amp;nbsp; &lt;br /&gt;colse c_postype;&lt;br /&gt;这里需要注意，exit when语句一定要紧跟在fetch之后。必避免多余的数据处理。 &lt;br /&gt;处理逻辑需要跟在exit when之后。这一点需要多加小心。 &lt;br /&gt;循环结束后要记得关闭游标。&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;第二种使用while循环。&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;open c_postype;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fetch c_postype into v_postype,v_description;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while c_postype%found loop&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;hellip;&amp;hellip;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fetch c_postype into v_postype,v_description ;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end loop;&amp;nbsp;&amp;nbsp; &lt;br /&gt;close c_postype;&lt;/p&gt;&lt;p&gt;我们知道了一个游标打开后，必须执行一次fetch语句，游标的属性才会起作用。所以使用while 循环时，就需要在循环之前进行一次fetch动作。 &lt;br /&gt;而且数据处理动作必须放在循环体内的fetch方法之前。循环体内的fetch方法要放在最后。否则就会多处理一次。这一点也要非常的小心。 &lt;br /&gt;总之，使用while来循环处理游标是最复杂的方法。&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;第三种 for循环&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;for v_pos in c_postype loop&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;v_postype := v_pos.pos_type;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;v_description := v_pos.description;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;hellip;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;end loop;&amp;nbsp;&amp;nbsp; &lt;br /&gt;可见for循环是比较简单实用的方法。 &lt;br /&gt;首先，它会自动open和close游标。解决了你忘记打开或关闭游标的烦恼。 &lt;br /&gt;其它,自动定义了一个记录类型及声明该类型的变量，并自动fetch数据到这个变量中。 &lt;br /&gt;我们需要注意v_pos 这个变量无需要在循环外进行声明，无需要为其指定数据类型。 &lt;br /&gt;它应该是一个记录类型，具体的结构是由游标决定的。 &lt;br /&gt;这个变量的作用域仅仅是在循环体内。 &lt;br /&gt;把v_pos看作一个记录变量就可以了，如果要获得某一个值就像调用记录一样就可以了。 &lt;br /&gt;如v_pos.pos_type &lt;br /&gt;由此可见，for循环是用来循环游标的最好方法。高效，简洁，安全。 &lt;br /&gt;但遗憾的是，常常见到的却是第一种方法。所以从今之后得改变这个习惯了。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;strong&gt;综合示例1&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #0000ff;"&gt;declare&lt;/span&gt;&lt;br/&gt; &lt;span style="color: #0000ff;"&gt;cursor&lt;/span&gt; goods_cursor  &lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt;创建游标&lt;/span&gt;&lt;br/&gt; &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt;&lt;br/&gt; &lt;span style="color: #0000ff;"&gt;select&lt;/span&gt; &lt;span style="color: #808080;"&gt;*&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;from&lt;/span&gt; goods &lt;span style="color: #0000ff;"&gt;where&lt;/span&gt; goodsid &lt;span style="color: #808080;"&gt;&amp;lt;&lt;/span&gt; &lt;span style="color: #800000; font-weight: bold;"&gt;5&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br/&gt; type goods_tab &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;is&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;table&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;of&lt;/span&gt; goods&lt;span style="color: #808080;"&gt;%&lt;/span&gt;rowtype; &lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt;声明索引表数据类型&lt;/span&gt;&lt;br/&gt; cur_goods_cursor goods_tab;               &lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt;声明循环变量&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&lt;span style="color: #0000ff;"&gt;begin&lt;/span&gt;&lt;br/&gt; &lt;span style="color: #0000ff;"&gt;open&lt;/span&gt;&lt;span style="color: #000000;"&gt; goods_cursor;&lt;br/&gt;    loop&lt;br/&gt;      &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;fetch&lt;/span&gt; goods_cursor &lt;span style="color: #0000ff;"&gt;bulk&lt;/span&gt; collect &lt;span style="color: #0000ff;"&gt;into&lt;/span&gt; cur_goods_cursor limit &lt;span style="color: #800000; font-weight: bold;"&gt;3&lt;/span&gt;;&lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt;取三条到索引表&lt;/span&gt;&lt;br/&gt;      &lt;span style="color: #0000ff;"&gt;for&lt;/span&gt; i &lt;span style="color: #808080;"&gt;in&lt;/span&gt; &lt;span style="color: #800000; font-weight: bold;"&gt;1&lt;/span&gt;..cur_goods_cursor.&lt;span style="color: #ff00ff;"&gt;count&lt;/span&gt; loop          &lt;span style="color: #008080;"&gt;--&lt;/span&gt;&lt;span style="color: #008080;"&gt;循环索引表&lt;/span&gt;&lt;br/&gt;          dbms_output.put_line(cur_goods_cursor(i).goodsid&lt;span style="color: #808080;"&gt;||&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;-&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #808080;"&gt;||&lt;/span&gt;cur_goods_cursor(i).goodsname&lt;span style="color: #808080;"&gt;||&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;-&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #808080;"&gt;||&lt;/span&gt;&lt;span style="color: #000000;"&gt;cur_goods_cursor(i).remark);  &lt;br/&gt;      &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;end&lt;/span&gt;&lt;span style="color: #000000;"&gt; loop;&lt;br/&gt;      &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;exit&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;when&lt;/span&gt; goods_cursor&lt;span style="color: #808080;"&gt;%&lt;/span&gt;&lt;span style="color: #000000;"&gt;notfound;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;end&lt;/span&gt;&lt;span style="color: #000000;"&gt; loop;  &lt;br/&gt; &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;close&lt;/span&gt;&lt;span style="color: #000000;"&gt; goods_cursor;&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;end&lt;/span&gt;;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;综合示例2&lt;/strong&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: #0000ff;"&gt;create&lt;/span&gt; &lt;span style="color: #808080;"&gt;or&lt;/span&gt; &lt;span style="color: #ff00ff;"&gt;replace&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;procedure&lt;/span&gt; SP_TestDemo &lt;span style="color: #0000ff;"&gt;is&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff;"&gt;temp&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;VARCHAR2&lt;/span&gt;(&lt;span style="color: #800000; font-weight: bold;"&gt;200&lt;/span&gt;&lt;span style="color: #000000;"&gt;);&lt;br/&gt;  &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;CURSOR&lt;/span&gt; C_USER &lt;span style="color: #0000ff;"&gt;IS&lt;/span&gt;&lt;br/&gt;    &lt;span style="color: #0000ff;"&gt;SELECT&lt;/span&gt; OSNAME &lt;span style="color: #0000ff;"&gt;FROM&lt;/span&gt;&lt;span style="color: #000000;"&gt; tbaccessos;&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;begin&lt;/span&gt;&lt;br/&gt;  &lt;span style="color: #0000ff;"&gt;OPEN&lt;/span&gt;&lt;span style="color: #000000;"&gt; C_USER;&lt;br/&gt;  LOOP&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;FETCH&lt;/span&gt;&lt;span style="color: #000000;"&gt; C_USER&lt;br/&gt;      &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;INTO&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;temp&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;if&lt;/span&gt; C_USER&lt;span style="color: #808080;"&gt;%&lt;/span&gt;NOTFOUND &lt;span style="color: #0000ff;"&gt;then&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br/&gt;      dbms_output.put_line(&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;游标中已经没有数据&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #000000;"&gt;);&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;else&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br/&gt;      dbms_output.put_line(&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;第&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt; &lt;span style="color: #808080;"&gt;||&lt;/span&gt; C_USER&lt;span style="color: #808080;"&gt;%&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;rowcount&lt;/span&gt; &lt;span style="color: #808080;"&gt;||&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;条数据输出完毕&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'&lt;/span&gt;&lt;span style="color: #000000;"&gt;);&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;end&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;if&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br/&gt;    &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;EXIT&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;when&lt;/span&gt; C_USER&lt;span style="color: #808080;"&gt;%&lt;/span&gt;&lt;span style="color: #000000;"&gt;NOTFOUND;&lt;br/&gt;    dbms_output.put_line(&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;temp&lt;/span&gt; &lt;span style="color: #808080;"&gt;||&lt;/span&gt;chr(&lt;span style="color: #800000; font-weight: bold;"&gt;13&lt;/span&gt;&lt;span style="color: #000000;"&gt;));&lt;br/&gt;  &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;END&lt;/span&gt;&lt;span style="color: #000000;"&gt; LOOP;&lt;br/&gt;  &lt;/span&gt;&lt;span style="color: #0000ff;"&gt;CLOSE&lt;/span&gt;&lt;span style="color: #000000;"&gt; C_USER;&lt;br/&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;end&lt;/span&gt;;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2451557.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2012/04/16/2451557.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myssh/archive/2012/01/17/2324635.html</id><title type="text">windows xp 系统CMD命令大全</title><summary type="text">appwiz.cpl------------添加删除程序 control userpasswords2--------用户帐户设置 cleanmgr-------垃圾整理 CMD--------------命令提示符可以当作是 Windows 的一个附件，Ping，Convert 这些不能在图形环境下 使用的功能要借助它来完成。 cmd------jview察看Java虚拟机版本。command.com------调用的则是系统内置的 NTVDM，一个 DOS虚拟机。它完全是一个类似 Virtual PC 的 虚拟环境，和系统本身联系不大。当我们在命令提示符下运行 DOS 程序时，实际上也 是</summary><published>2012-01-17T06:30:00Z</published><updated>2012-01-17T06:30:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2012/01/17/2324635.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2012/01/17/2324635.html"/><content type="html">&lt;div id="xspace-showmessage" class="xspace-itemmessage"&gt;&lt;p&gt;appwiz.cpl------------添加删除程序&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;control userpasswords2--------用户帐户设置&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;cleanmgr-------垃圾整理&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;CMD--------------命令提示符可以当作是 Windows 的一个附件，Ping，Convert 这些不能在图形环境下 使用的功能要借助它来完成。&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;cmd------jview察看Java虚拟机版本。&lt;br /&gt;command.com------调用的则是系统内置的 NTVDM，一个 DOS虚拟机。它完全是一个类似 Virtual PC 的 虚拟环境，和系统本身联系不大。当我们在命令提示符下运行 DOS 程序时，实际上也 是自动转移到 NTVDM虚拟机下，和 CMD 本身没什么关系。&lt;br /&gt;calc-----------启动计算器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;chkdsk.exe-----Chkdsk磁盘检查&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;compmgmt.msc---计算机管理&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;conf-----------启动 netmeeting&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;control userpasswords2-----User Account 权限设置&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;devmgmt.msc--- 设备管理器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;diskmgmt.msc---磁盘管理实用程序&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;dfrg.msc-------磁盘碎片整理程序&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;drwtsn32------ 系统医生&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;dvdplay--------启动Media Player&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;dxdiag-----------DirectX Diagnostic Tool&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;gpedit.msc-------组策略编辑器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;gpupdate /target:computer /force 强制刷新组策略&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;eventvwr.exe-----事件查看器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;explorer-------打开资源管理器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;logoff---------注销命令&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;lusrmgr.msc----本机用户和组&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;msinfo32---------系统信息&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;msconfig---------系统配置实用程序&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;net start (servicename)----启动该服务&amp;nbsp;&amp;nbsp; &lt;br /&gt;net stop (servicename)-----停止该服务&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;notepad--------打开记事本&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;nusrmgr.cpl-------同control userpasswords，打开用户帐户控制面板&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Nslookup-------IP地址侦测器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;oobe/msoobe /a----检查XP是否激活&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;perfmon.msc----计算机性能监测程序&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;progman--------程序管理器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;regedit----------注册表编辑器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;regedt32-------注册表编辑器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;regsvr32 /u *.dll----停止dll文件运行&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;route print------查看路由表&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;rononce -p ----15秒关机&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;rsop.msc-------组策略结果集&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;rundll32.exe rundll32.exe %Systemroot%System32shimgvw.dll,ImageView_Fullscreen----启动一个空白的Windows 图片和传真查看器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;secpol.msc--------本地安全策略&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;services.msc---本地服务设置&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;sfc /scannow-----启动系统文件检查器&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;sndrec32-------录音机&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;taskmgr-----任务管理器（适用于2000／xp／2003）&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;tsshutdn-------60秒倒计时关机命令&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;winchat--------XP自带局域网聊天&lt;br /&gt;winmsd---------系统信息&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;winver-----显示About Windows 窗口&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;wupdmgr-----------Windows Update&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;winver---------检查Windows版本&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;wmimgmt.msc----打开windows管理体系结构(WMI)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;wupdmgr--------windows更新程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;wscript--------windows脚本宿主设置&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;write----------写字板&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;winmsd---------系统信息&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;wiaacmgr-------扫描仪和照相机向导&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;winchat--------XP自带局域网聊天&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;mem.exe--------显示内存使用情况&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Msconfig.exe---系统配置实用程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;mplayer2-------简易widnows media player&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;mspaint--------画图板&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;mstsc----------远程桌面连接&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;mplayer2-------媒体播放机&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;magnify--------放大镜实用程序&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;mmc------------打开控制台&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;mobsync--------同步命令&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;dxdiag---------检查DirectX信息&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;drwtsn32------ 系统医生&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;devmgmt.msc--- 设备管理器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;dfrg.msc-------磁盘碎片整理程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;diskmgmt.msc---磁盘管理实用程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;dcomcnfg-------打开系统组件服务&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;ddeshare-------打开DDE共享设置&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;dvdplay--------DVD播放器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;net stop messenger-----停止信使服务&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;net start messenger----开始信使服务&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;notepad--------打开记事本&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;nslookup-------网络管理的工具向导&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;ntbackup-------系统备份和还原&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;narrator-------屏幕&amp;ldquo;讲述人&amp;rdquo;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;ntmsmgr.msc----移动存储管理器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;ntmsoprq.msc---移动存储管理员操作请求&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;netstat -an----(TC)命令检查接口&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;syncapp--------创建一个公文包&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;sysedit--------系统配置编辑器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;sigverif-------文件签名验证程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;sndrec32-------录音机&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;shrpubw--------创建共享文件夹 &lt;br /&gt;secpol.msc-----本地安全策略&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;syskey---------系统加密，一旦加密就不能解开，保护windows xp系统的双重密码&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;services.msc---本地服务设置&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Sndvol32-------音量控制程序 &lt;br /&gt;sfc.exe--------系统文件检查器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;sfc /scannow---windows文件保护&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;tsshutdn-------60秒倒计时关机命令&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;tourstart------xp简介（安装完成后出现的漫游xp程序）&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;taskmgr--------任务管理器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;eventvwr-------事件查看器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;eudcedit-------造字程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;explorer-------打开资源管理器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;packager-------对象包装程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;perfmon.msc----计算机性能监测程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;progman--------程序管理器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;regedit.exe----注册表&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;rsop.msc-------组策略结果集&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;regedt32-------注册表编辑器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;rononce -p ----15秒关机&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;regsvr32 /u *.dll----停止dll文件运行&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;regsvr32 /u zipfldr.dll------取消ZIP支持&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;cmd.exe--------CMD命令提示符&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;chkdsk.exe-----Chkdsk磁盘检查&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;certmgr.msc----证书管理实用程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;calc-----------启动计算器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;charmap--------启动字符映射表&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;cliconfg-------SQL SERVER 客户端网络实用程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Clipbrd--------剪贴板查看器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;conf-----------启动netmeeting&amp;nbsp; &lt;br /&gt;compmgmt.msc---计算机管理&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;cleanmgr-------垃圾整理&amp;nbsp; &lt;br /&gt;ciadv.msc------索引服务程序&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;osk------------打开屏幕键盘&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;odbcad32-------ODBC数据源管理器&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;oobe/msoobe /a----检查XP是否激活&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;lusrmgr.msc----本机用户和组&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;logoff---------注销命令&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;iexpress-------木马捆绑工具，系统自带&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Nslookup-------IP地址侦测器&amp;nbsp; ipconfig /all&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;fsmgmt.msc-----共享文件夹管理器&amp;nbsp; &lt;br /&gt;utilman--------辅助工具管理器&amp;nbsp; &lt;br /&gt;gpedit.msc-----组策略&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp; 命令行解释器是一个单独的软件程序，它可以在用户和操作系统之间提供直接的通讯。非图形命令行解释器用户界面提供运行基于字符的应用程序和实用程序的环境。&lt;br /&gt;&amp;nbsp;&amp;nbsp; 通过使用类似于 MS-DOS 命令解释程序 Command.com 的单独字符，命令行解释器执行程序并在屏幕上显示其输出。Windows OS操作系统命令行解释器使用命令解释程序 Cmd.exe（该程序加载应用程序并指导应用程序之间的信息流动）将用户输入转换为操作系统可理解的形式。&lt;br /&gt;&amp;nbsp; 在CMD中进行进程管理和服务管理的工具有以下几种： &lt;br /&gt;At &lt;br /&gt;Lodctr &lt;br /&gt;Net 服务命令 &lt;br /&gt;Perfmon &lt;br /&gt;Sc &lt;br /&gt;Schtasks &lt;br /&gt;Shutdown &lt;br /&gt;Systeminfo &lt;br /&gt;Taskkill &lt;br /&gt;Tasklist &lt;br /&gt;Unlodctr&lt;/p&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2324635.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2012/01/17/2324635.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myssh/archive/2011/12/29/2306525.html</id><title type="text">Java C格式输入利用printf函数</title><summary type="text">我们在利用System.out.print和System.out.println时，常常苦于它没有输出格式而编写复杂的代码，甚至利用TextFormat等格式输出类，其实这些都不需要，java有自己的格式化输入方法，完全可以媲美C的格式输入。它就是System.out.printf函数。 例如：我们用 System.out.printf("打印从%3d到%3d整数\n", 1, 100); 运行后的输出结果是： 打印从 1到100整数 上面的%3d表示输入整数，并且至少补齐3位。 System.out.printf具体的使用方法有： System.out.printf(&amp;q</summary><published>2011-12-29T10:16:00Z</published><updated>2011-12-29T10:16:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2011/12/29/2306525.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2011/12/29/2306525.html"/><content type="html">&lt;div id="blog_content" class="blog_content"&gt;我们在利用System.out.print和System.out.println时，常常苦于它没有输出格式而编写复杂的代码，甚至利用TextFormat等格式输出类，其实这些都不需要，java有自己的格式化输入方法，完全可以媲美C的格式输入。它就是System.out.printf函数。 &lt;br /&gt;例如：我们用 &lt;br /&gt;&lt;strong&gt;System.out.printf("打印从%3d到%3d整数\n", 1, 100);&lt;/strong&gt; &lt;br /&gt;运行后的输出结果是： &lt;br /&gt;&lt;strong&gt;打印从&amp;nbsp; 1到100整数&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;上面的%3d表示输入整数，并且至少补齐3位。 &lt;br /&gt;&lt;br /&gt;System.out.printf具体的使用方法有： &lt;br /&gt;System.out.printf("%f",d);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //"f"表示格式化输出浮点数。 &lt;br /&gt;System.out.printf("%9.2f",d);&amp;nbsp;&amp;nbsp; //"9.2"中的9表示输出的长度，2表示小数点后的位数。 &lt;br /&gt;System.out.printf("%+9.2f",d);&amp;nbsp; //"+"表示输出的数带正负号。 &lt;br /&gt;System.out.printf("%-9.4f",d);&amp;nbsp; //"-"表示输出的数左对齐（默认为右对齐）。 &lt;br /&gt;System.out.printf("%+-9.3f",d); //"+-"表示输出的数带正负号且左对齐。 &lt;br /&gt;System.out.printf("%d",i);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //"d"表示输出十进制整数。 &lt;br /&gt;&lt;strong&gt;System.out.printf("%6d",i);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //表示输入十进制整数，并且至少补齐6位。&lt;/strong&gt; &lt;br /&gt;System.out.printf("%o",i);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //"o"表示输出八进制整数。 &lt;br /&gt;System.out.printf("%x",i);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //"x"表示输出十六进制整数。 &lt;br /&gt;System.out.printf("%#x",i);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //"x"表示输出带有十六进制标志的整数。 &lt;br /&gt;System.out.printf("%s",s);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //"s"表示输出字符串。 &lt;br /&gt;&lt;br /&gt;文章地址：&lt;a href="http://javapub.iteye.com/blog/719865" target="_blank"&gt;http://javapub.iteye.com/blog/719865&lt;/a&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2306525.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2011/12/29/2306525.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myssh/archive/2011/11/24/2261902.html</id><title type="text">HTML5中的Canvas（颜色）【转载】</title><summary type="text">原文：http://eyehere.net/2011/html5-canvas-color/这一次讲解Canvas中的颜色应用，同时Canvas中的颜色还能带透明，太酷了~~指定颜色现在为止我们画的图形都是黑色的，这是Canvas绘制的默认色彩，要想换一种颜色的话，就得在实际画之前指定颜色。ctx.strokeStyle = color——指定绘制线的颜色ctx.fillStyle = color——指定填充的颜色来看看实际的例子：1234567891011121314151617181920onload = function() { draw(); }; function draw() </summary><published>2011-11-24T08:14:00Z</published><updated>2011-11-24T08:14:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2011/11/24/2261902.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2011/11/24/2261902.html"/><content type="html">&lt;p&gt;原文：&lt;a href="http://eyehere.net/2011/html5-canvas-color/"&gt;http://eyehere.net/2011/html5-canvas-color/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;这一次讲解Canvas中的颜色应用，同时Canvas中的颜色还能带透明，太酷了~~&lt;/p&gt;&lt;p&gt;&lt;strong&gt;指定颜色&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;现在为止我们画的图形都是黑色的，这是Canvas绘制的默认色彩，要想换一种颜色的话，就得在实际画之前指定颜色。&lt;/p&gt;&lt;div style="padding-left: 1em; background: #f3f3f3;"&gt;ctx.strokeStyle = color&lt;p&gt;&amp;mdash;&amp;mdash;　指定绘制线的颜色&lt;/p&gt;ctx.fillStyle = color&lt;p&gt;&amp;mdash;&amp;mdash;　指定填充的颜色&lt;/p&gt;&lt;/div&gt;&lt;p&gt;来看看实际的例子：&lt;/p&gt;&lt;div&gt;&lt;div id="highlighter_215557" class="syntaxhighlighter  js ie "&gt;&lt;table border="0" cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="gutter"&gt;&lt;div class="line number1 index0 alt2"&gt;1&lt;/div&gt;&lt;div class="line number2 index1 alt1"&gt;2&lt;/div&gt;&lt;div class="line number3 index2 alt2"&gt;3&lt;/div&gt;&lt;div class="line number4 index3 alt1"&gt;4&lt;/div&gt;&lt;div class="line number5 index4 alt2"&gt;5&lt;/div&gt;&lt;div class="line number6 index5 alt1"&gt;6&lt;/div&gt;&lt;div class="line number7 index6 alt2"&gt;7&lt;/div&gt;&lt;div class="line number8 index7 alt1"&gt;8&lt;/div&gt;&lt;div class="line number9 index8 alt2"&gt;9&lt;/div&gt;&lt;div class="line number10 index9 alt1"&gt;10&lt;/div&gt;&lt;div class="line number11 index10 alt2"&gt;11&lt;/div&gt;&lt;div class="line number12 index11 alt1"&gt;12&lt;/div&gt;&lt;div class="line number13 index12 alt2"&gt;13&lt;/div&gt;&lt;div class="line number14 index13 alt1"&gt;14&lt;/div&gt;&lt;div class="line number15 index14 alt2"&gt;15&lt;/div&gt;&lt;div class="line number16 index15 alt1"&gt;16&lt;/div&gt;&lt;div class="line number17 index16 alt2"&gt;17&lt;/div&gt;&lt;div class="line number18 index17 alt1"&gt;18&lt;/div&gt;&lt;div class="line number19 index18 alt2"&gt;19&lt;/div&gt;&lt;div class="line number20 index19 alt1"&gt;20&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="container"&gt;&lt;div class="line number1 index0 alt2"&gt;&lt;code class="js plain"&gt;onload = &lt;/code&gt;&lt;code class="js keyword"&gt;function&lt;/code&gt;&lt;code class="js plain"&gt;() { &lt;/code&gt;&lt;/div&gt;&lt;div class="line number2 index1 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;draw(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number3 index2 alt2"&gt;&lt;code class="js plain"&gt;}; &lt;/code&gt;&lt;/div&gt;&lt;div class="line number4 index3 alt1"&gt;&lt;code class="js keyword"&gt;function&lt;/code&gt; &lt;code class="js plain"&gt;draw() { &lt;/code&gt;&lt;/div&gt;&lt;div class="line number5 index4 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js keyword"&gt;var&lt;/code&gt; &lt;code class="js plain"&gt;canvas = document.getElementById(&lt;/code&gt;&lt;code class="js string"&gt;'c1'&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number6 index5 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js keyword"&gt;if&lt;/code&gt; &lt;code class="js plain"&gt;( ! canvas || ! canvas.getContext ) { &lt;/code&gt;&lt;code class="js keyword"&gt;return&lt;/code&gt; &lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;; } &lt;/code&gt;&lt;/div&gt;&lt;div class="line number7 index6 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js keyword"&gt;var&lt;/code&gt; &lt;code class="js plain"&gt;ctx = canvas.getContext(&lt;/code&gt;&lt;code class="js string"&gt;'2d'&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number8 index7 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.beginPath(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number9 index8 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fillStyle = &lt;/code&gt;&lt;code class="js string"&gt;'rgb(192, 80, 77)'&lt;/code&gt;&lt;code class="js plain"&gt;; &lt;/code&gt;&lt;code class="js comments"&gt;// 红 &lt;/code&gt;&lt;/div&gt;&lt;div class="line number10 index9 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.arc(70, 45, 35, 0, Math.PI*2, &lt;/code&gt;&lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number11 index10 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fill(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number12 index11 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.beginPath(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number13 index12 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fillStyle = &lt;/code&gt;&lt;code class="js string"&gt;'rgb(155, 187, 89)'&lt;/code&gt;&lt;code class="js plain"&gt;; &lt;/code&gt;&lt;code class="js comments"&gt;// 绿 &lt;/code&gt;&lt;/div&gt;&lt;div class="line number14 index13 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.arc(45, 95, 35, 0, Math.PI*2, &lt;/code&gt;&lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number15 index14 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fill(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number16 index15 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.beginPath(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number17 index16 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fillStyle = &lt;/code&gt;&lt;code class="js string"&gt;'rgb(128, 100, 162)'&lt;/code&gt;&lt;code class="js plain"&gt;; &lt;/code&gt;&lt;code class="js comments"&gt;// 紫 &lt;/code&gt;&lt;/div&gt;&lt;div class="line number18 index17 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.arc(95, 95, 35, 0, Math.PI*2, &lt;/code&gt;&lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number19 index18 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fill(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number20 index19 alt1"&gt;&lt;code class="js plain"&gt;}&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;效果如下图：&lt;/p&gt;&lt;p&gt;&lt;img class="size-full wp-image-1112 aligncenter" title="html5-fillStyle1" src="http://eyehere.net/wp-content/uploads/2011/09/html5-fillStyle1.png" alt="" width="142" height="142" /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;指定透明度&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;和普通的CSS中一样，我们指定颜色的时候还可以带一个alpha值（不过用的不多，IE9之前都不支持）。看代码：&lt;/p&gt;&lt;div&gt;&lt;div id="highlighter_702704" class="syntaxhighlighter  js ie"&gt;&lt;table border="0" cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="gutter"&gt;&lt;div class="line number1 index0 alt2"&gt;1&lt;/div&gt;&lt;div class="line number2 index1 alt1"&gt;2&lt;/div&gt;&lt;div class="line number3 index2 alt2"&gt;3&lt;/div&gt;&lt;div class="line number4 index3 alt1"&gt;4&lt;/div&gt;&lt;div class="line number5 index4 alt2"&gt;5&lt;/div&gt;&lt;div class="line number6 index5 alt1"&gt;6&lt;/div&gt;&lt;div class="line number7 index6 alt2"&gt;7&lt;/div&gt;&lt;div class="line number8 index7 alt1"&gt;8&lt;/div&gt;&lt;div class="line number9 index8 alt2"&gt;9&lt;/div&gt;&lt;div class="line number10 index9 alt1"&gt;10&lt;/div&gt;&lt;div class="line number11 index10 alt2"&gt;11&lt;/div&gt;&lt;div class="line number12 index11 alt1"&gt;12&lt;/div&gt;&lt;div class="line number13 index12 alt2"&gt;13&lt;/div&gt;&lt;div class="line number14 index13 alt1"&gt;14&lt;/div&gt;&lt;div class="line number15 index14 alt2"&gt;15&lt;/div&gt;&lt;div class="line number16 index15 alt1"&gt;16&lt;/div&gt;&lt;div class="line number17 index16 alt2"&gt;17&lt;/div&gt;&lt;div class="line number18 index17 alt1"&gt;18&lt;/div&gt;&lt;div class="line number19 index18 alt2"&gt;19&lt;/div&gt;&lt;div class="line number20 index19 alt1"&gt;20&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="container"&gt;&lt;div class="line number1 index0 alt2"&gt;&lt;code class="js plain"&gt;onload = &lt;/code&gt;&lt;code class="js keyword"&gt;function&lt;/code&gt;&lt;code class="js plain"&gt;() { &lt;/code&gt;&lt;/div&gt;&lt;div class="line number2 index1 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;draw(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number3 index2 alt2"&gt;&lt;code class="js plain"&gt;}; &lt;/code&gt;&lt;/div&gt;&lt;div class="line number4 index3 alt1"&gt;&lt;code class="js keyword"&gt;function&lt;/code&gt; &lt;code class="js plain"&gt;draw() { &lt;/code&gt;&lt;/div&gt;&lt;div class="line number5 index4 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js keyword"&gt;var&lt;/code&gt; &lt;code class="js plain"&gt;canvas = document.getElementById(&lt;/code&gt;&lt;code class="js string"&gt;'c1'&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number6 index5 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js keyword"&gt;if&lt;/code&gt; &lt;code class="js plain"&gt;( ! canvas || ! canvas.getContext ) { &lt;/code&gt;&lt;code class="js keyword"&gt;return&lt;/code&gt; &lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;; } &lt;/code&gt;&lt;/div&gt;&lt;div class="line number7 index6 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js keyword"&gt;var&lt;/code&gt; &lt;code class="js plain"&gt;ctx = canvas.getContext(&lt;/code&gt;&lt;code class="js string"&gt;'2d'&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number8 index7 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.beginPath(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number9 index8 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fillStyle = &lt;/code&gt;&lt;code class="js string"&gt;'rgba(192, 80, 77, 0.7)'&lt;/code&gt;&lt;code class="js plain"&gt;; &lt;/code&gt;&lt;code class="js comments"&gt;// &lt;/code&gt;&lt;/div&gt;&lt;div class="line number10 index9 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.arc(70, 45, 35, 0, Math.PI*2, &lt;/code&gt;&lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number11 index10 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fill(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number12 index11 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.beginPath(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number13 index12 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fillStyle = &lt;/code&gt;&lt;code class="js string"&gt;'rgba(155, 187, 89, 0.7)'&lt;/code&gt;&lt;code class="js plain"&gt;; &lt;/code&gt;&lt;code class="js comments"&gt;// &lt;/code&gt;&lt;/div&gt;&lt;div class="line number14 index13 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.arc(45, 95, 35, 0, Math.PI*2, &lt;/code&gt;&lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number15 index14 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fill(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number16 index15 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.beginPath(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number17 index16 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fillStyle = &lt;/code&gt;&lt;code class="js string"&gt;'rgba(128, 100, 162, 0.7)'&lt;/code&gt;&lt;code class="js plain"&gt;; &lt;/code&gt;&lt;code class="js comments"&gt;// &lt;/code&gt;&lt;/div&gt;&lt;div class="line number18 index17 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.arc(95, 95, 35, 0, Math.PI*2, &lt;/code&gt;&lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number19 index18 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fill(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number20 index19 alt1"&gt;&lt;code class="js plain"&gt;}&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;结果就是下面这样：&lt;/p&gt;&lt;p&gt;&lt;img class="size-full wp-image-1113 aligncenter" title="fillStyle2" src="http://eyehere.net/wp-content/uploads/2011/09/fillStyle2.png" alt="" width="142" height="142" /&gt;&lt;br /&gt;和上面的代码基本没变化，就是把rgb(r, g, b)变成了rgba(r, g, b, a)而已，a的值也是0~1，0表示完全透明，1则是完全不透明（所以alpha的值实际上是&amp;ldquo;不透明度&amp;rdquo;）。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;全局透明度&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;上面我们给每一个圆加了0.7的alpha值，不过我们每个圆的alpha都是一样的，每个都写一遍未免有些麻烦（说是我没觉得麻烦&amp;hellip;&amp;hellip;只不过不这么说就没法引出这个新功能啊：）&lt;/p&gt;&lt;div style="padding-left: 1em; background: #f3f3f3;"&gt;ctx.globalAlpha = alpha&lt;/div&gt;&lt;p&gt;这个参数指定了全局的alpha值，这么设定之后，所有画的图案都会有这么点的透明，除非你又特别指定了。所以把我们的第一个例子稍微改一下：&lt;/p&gt;&lt;div&gt;&lt;div id="highlighter_372368" class="syntaxhighlighter  js ie"&gt;&lt;table border="0" cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="gutter"&gt;&lt;div class="line number1 index0 alt2"&gt;1&lt;/div&gt;&lt;div class="line number2 index1 alt1"&gt;2&lt;/div&gt;&lt;div class="line number3 index2 alt2"&gt;3&lt;/div&gt;&lt;div class="line number4 index3 alt1"&gt;4&lt;/div&gt;&lt;div class="line number5 index4 alt2"&gt;5&lt;/div&gt;&lt;div class="line number6 index5 alt1"&gt;6&lt;/div&gt;&lt;div class="line number7 index6 alt2"&gt;7&lt;/div&gt;&lt;div class="line number8 index7 alt1"&gt;8&lt;/div&gt;&lt;div class="line number9 index8 alt2"&gt;9&lt;/div&gt;&lt;div class="line number10 index9 alt1"&gt;10&lt;/div&gt;&lt;div class="line number11 index10 alt2"&gt;11&lt;/div&gt;&lt;div class="line number12 index11 alt1"&gt;12&lt;/div&gt;&lt;div class="line number13 index12 alt2"&gt;13&lt;/div&gt;&lt;div class="line number14 index13 alt1"&gt;14&lt;/div&gt;&lt;div class="line number15 index14 alt2"&gt;15&lt;/div&gt;&lt;div class="line number16 index15 alt1"&gt;16&lt;/div&gt;&lt;div class="line number17 index16 alt2"&gt;17&lt;/div&gt;&lt;div class="line number18 index17 alt1"&gt;18&lt;/div&gt;&lt;div class="line number19 index18 alt2"&gt;19&lt;/div&gt;&lt;div class="line number20 index19 alt1"&gt;20&lt;/div&gt;&lt;div class="line number21 index20 alt2"&gt;21&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div class="container"&gt;&lt;div class="line number1 index0 alt2"&gt;&lt;code class="js plain"&gt;onload = &lt;/code&gt;&lt;code class="js keyword"&gt;function&lt;/code&gt;&lt;code class="js plain"&gt;() { &lt;/code&gt;&lt;/div&gt;&lt;div class="line number2 index1 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;draw(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number3 index2 alt2"&gt;&lt;code class="js plain"&gt;}; &lt;/code&gt;&lt;/div&gt;&lt;div class="line number4 index3 alt1"&gt;&lt;code class="js keyword"&gt;function&lt;/code&gt; &lt;code class="js plain"&gt;draw() { &lt;/code&gt;&lt;/div&gt;&lt;div class="line number5 index4 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js keyword"&gt;var&lt;/code&gt; &lt;code class="js plain"&gt;canvas = document.getElementById(&lt;/code&gt;&lt;code class="js string"&gt;'c1'&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number6 index5 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js keyword"&gt;if&lt;/code&gt; &lt;code class="js plain"&gt;( ! canvas || ! canvas.getContext ) { &lt;/code&gt;&lt;code class="js keyword"&gt;return&lt;/code&gt; &lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;; } &lt;/code&gt;&lt;/div&gt;&lt;div class="line number7 index6 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js keyword"&gt;var&lt;/code&gt; &lt;code class="js plain"&gt;ctx = canvas.getContext(&lt;/code&gt;&lt;code class="js string"&gt;'2d'&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number8 index7 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.globalAlpha = 0.7;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/code&gt;&lt;code class="js comments"&gt;// 就多了这么一句 &lt;/code&gt;&lt;/div&gt;&lt;div class="line number9 index8 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.beginPath(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number10 index9 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fillStyle = &lt;/code&gt;&lt;code class="js string"&gt;'rgb(192, 80, 77)'&lt;/code&gt;&lt;code class="js plain"&gt;; &lt;/code&gt;&lt;/div&gt;&lt;div class="line number11 index10 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.arc(70, 45, 35, 0, Math.PI*2, &lt;/code&gt;&lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number12 index11 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fill(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number13 index12 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.beginPath(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number14 index13 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fillStyle = &lt;/code&gt;&lt;code class="js string"&gt;'rgb(155, 187, 89)'&lt;/code&gt;&lt;code class="js plain"&gt;; &lt;/code&gt;&lt;/div&gt;&lt;div class="line number15 index14 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.arc(45, 95, 35, 0, Math.PI*2, &lt;/code&gt;&lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number16 index15 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fill(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number17 index16 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.beginPath(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number18 index17 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fillStyle = &lt;/code&gt;&lt;code class="js string"&gt;'rgb(128, 100, 162)'&lt;/code&gt;&lt;code class="js plain"&gt;; &lt;/code&gt;&lt;/div&gt;&lt;div class="line number19 index18 alt2"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.arc(95, 95, 35, 0, Math.PI*2, &lt;/code&gt;&lt;code class="js keyword"&gt;false&lt;/code&gt;&lt;code class="js plain"&gt;); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number20 index19 alt1"&gt;&lt;code class="js spaces"&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;code class="js plain"&gt;ctx.fill(); &lt;/code&gt;&lt;/div&gt;&lt;div class="line number21 index20 alt2"&gt;&lt;code class="js plain"&gt;}&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;然后我们的结果就和2完全一样了：&lt;/p&gt;&lt;p&gt;&lt;img class="size-full wp-image-1113 aligncenter" title="fillStyle2" src="http://eyehere.net/wp-content/uploads/2011/09/fillStyle2.png" alt="" width="142" height="142" /&gt;&lt;/p&gt;&lt;p&gt;画图多的时候，还是能少打很多字的。&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2261902.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2011/11/24/2261902.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myssh/archive/2011/11/24/2261901.html</id><title type="text">HTML5 canvas 初级入门教程【转】</title><summary type="text">原文：http://www.csser.com/dev/274.htmlHTML5canvas即HTML5画布，是一个现代浏览器都支持的HTML5非插件绘图的功能，本文将展示如何通过HTML5canvasAPI操作canvas元素、绘制图形、改变绘图颜色以及删除图形，让我们开始进入这很酷的新技术的短暂旅行吧。canvas元素简介使用canvas元素相当简单，它只是一个单纯的HTML标签，外加宽高两个特性。&lt;canvaswidth="500"height="500"&gt;&lt;!--在这里插入向后兼容的内容，不支持canvas的浏览器可以解析和显</summary><published>2011-11-24T08:13:00Z</published><updated>2011-11-24T08:13:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2011/11/24/2261901.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2011/11/24/2261901.html"/><content type="html">&lt;p&gt;原文：&lt;a href="http://www.csser.com/dev/274.html"&gt;http://www.csser.com/dev/274.html&lt;/a&gt;&lt;/p&gt;&lt;p&gt;HTML5&amp;nbsp;canvas&amp;nbsp;即HTML5画布，是一个现代浏览器都支持的HTML5非插件绘图的功能，本文将展示如何通过HTML5&amp;nbsp;canvas&amp;nbsp;API操作canvas元素、绘制图形、改变绘图颜色以及删除图形，让我们开始进入这很酷的新技术的短暂旅行吧。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;canvas元素简介&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;使用canvas元素相当简单，它只是一个单纯的HTML标签，外加宽高两个特性。&lt;/p&gt;&amp;lt;canvas&amp;nbsp;width="500"&amp;nbsp;height="500"&amp;gt;&lt;br/&gt;&amp;lt;!--&amp;nbsp;在这里插入向后兼容的内容，不支持canvas的浏览器可以解析和显示&amp;nbsp;--&amp;gt;&lt;br/&gt;&amp;lt;/canvas&amp;gt;&lt;p&gt;上面的代码在页面中插入了一个透明的画布，canvas元素内部的内容可以在不支持canvas功能的浏览器下显示你想给你的用户提供的信息，联想下&amp;lt;noscript&amp;gt;元素就可以。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;浏览器支持&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;很重要的一点就是浏览器对canvas的支持还是相当不错的，所有现代浏览器都支持它，包括最新版的IE9：&lt;/p&gt;&lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;&lt;p&gt;Internet&amp;nbsp;Explorer&amp;nbsp;9.0+&lt;br /&gt;Safari&amp;nbsp;3.0+&lt;br /&gt;Firefox&amp;nbsp;3.0+&lt;br /&gt;Chrome&amp;nbsp;3.0+&lt;br /&gt;Opera&amp;nbsp;10.0+&lt;br /&gt;iOS&amp;nbsp;1.0+&lt;br /&gt;Android&amp;nbsp;1.0+&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;有趣的是，你可以在IE8以及更低版本的IE浏览器下使用canvas功能，借助&lt;a href="http://code.google.com/p/explorercanvas/" target="_blank"&gt;ExplorerCanvas&amp;nbsp;插件&lt;/a&gt;。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;画布尺寸&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;当定义canvas元素的尺寸时，最好通过HTML设置它的width和height特性，因为通过CSS设置宽高会导致画布按比例缩放到你设置的值，这背后有它的逻辑原因：在canvas元素的内部存在一个名为2d渲染环境（2d&amp;nbsp;redering&amp;nbsp;context）的对象，所以，通过CSS设置画布尺寸会引起奇怪的效果。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;探索2d&amp;nbsp;渲染环境&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;我们上面提到的canvas元素只是canvas功能的一部分，另一部分是2d渲染环境，它可以让你实现很酷的看得到的东西。&lt;/p&gt;&lt;p&gt;需要完全理清的是：当你使用canvas，你不是在canvas元素上画图，事实上你是在canvas元素内部的2d渲染环境上。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;坐标系统&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;如果你曾经使用过2d绘图编程语言（比如ActionScript、Processing等），你应该会了解基于屏幕（screen-based）的坐标系统。canvas内部的2d渲染环境并没有什么不同之处，它采用标准的笛卡尔坐标系统，原点位于屏幕左上角，向右移动会增加x坐标的值，向下移动会增加y坐标的值，很容易理解。&lt;/p&gt;&lt;p&gt;&lt;img title="canvas-unit" src="http://farm6.static.flickr.com/5099/5444647417_e731191271.jpg" alt="canvas-unit" width="500" height="353" /&gt;&lt;/p&gt;&lt;p&gt;通常坐标系统的单位是屏幕的1像素。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;操作2d渲染环境&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;需要利用Javascript提供的API来获取2d渲染环境对象，该方法为：getContext()，看下简单的例子：&lt;/p&gt;&amp;lt;canvas&amp;nbsp;id="csser-com-Canvas"&amp;nbsp;width="500"&amp;nbsp;height="500"&amp;gt;&lt;br/&gt;   &amp;lt;!--&amp;nbsp;向后兼容的内容&amp;nbsp;--&amp;gt;&lt;br/&gt;&amp;lt;/canvas&amp;gt;&lt;br/&gt;&amp;lt;script&amp;gt;&lt;br/&gt;var&amp;nbsp;canvas&amp;nbsp;=&amp;nbsp;document.getElementById("csser-com-Canvas");&lt;br/&gt;var&amp;nbsp;c&amp;nbsp;=&amp;nbsp;canvas.getContext("2d");&lt;br/&gt;&amp;lt;/script&amp;gt;&lt;p&gt;通过调用canvas对象的getContext()方法，c变量就包含了指向2d渲染环境的引用，这意味着你现在已经完成了在画布上绘图的一切准备，接下来可以开始绘图了。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;绘制矩形&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;获得了2d渲染环境对象，就可以通过调用API提供的大量方法来进行绘图了，一个最基本的方法就是fillRect()，通过它可以绘制一个填充颜色的矩形（颜色默认值为黑色）。&lt;/p&gt;&lt;p&gt;在c变量的下面增加以下代码：&lt;/p&gt;c.fillRect(0,&amp;nbsp;0,&amp;nbsp;50,&amp;nbsp;50);&lt;p&gt;这将在画布左上角绘制绘制一个黑色背景的正方形：&lt;/p&gt;&lt;p&gt;&lt;img class="alignnone" title="canvas-fillRect" src="http://farm5.static.flickr.com/4112/5444673295_e0f869e948_m.jpg" alt="canvas-fillRect" width="58" height="60" /&gt;&lt;/p&gt;&lt;p&gt;在调用fillRect()方法时传入了4个参数：&lt;/p&gt;&lt;ul&gt;&lt;li&gt;第一个是基于原点的x坐标位置&lt;/li&gt;&lt;li&gt;第二个是基于原点的y坐标位置&lt;/li&gt;&lt;li&gt;第三个是宽度&lt;/li&gt;&lt;li&gt;第四个是高度&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;fillRect的伪代码看起来应该像这个样子：&lt;/p&gt;c.fillRect(x,&amp;nbsp;y,&amp;nbsp;width,&amp;nbsp;height);&lt;p&gt;很酷的是，不仅可以绘制填充的矩形，你还可以绘制线框矩形，使用strokeRect()方法，绘制四周产生描边效果的矩形，如：&lt;/p&gt;c.strokeRect(50,&amp;nbsp;50,&amp;nbsp;100,&amp;nbsp;100);&lt;p&gt;strokeRect的参数与fillRect是一致的，绘制的结果如下：&lt;/p&gt;&lt;p&gt;&lt;img class="alignnone" title="canvas-strokeRect" src="http://farm6.static.flickr.com/5019/5444673313_94f0bb9556_m.jpg" alt="canvas-strokeRect" width="160" height="160" /&gt;&lt;/p&gt;&lt;p&gt;利用canvas绘图，简单、优美，所有的方法都很易懂，但是当放在一起使用可以让你画出很漂亮的图形。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;绘制路径&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;矩形是唯一一个可以通过单个API方法绘制的图形，先把它放在一边，我们来学习下路径（Paths）绘制。使用路径，可以绘制线条、连续的曲线以及复合图形。&lt;/p&gt;&lt;p&gt;绘制一个简单的路径需要利用一些AIP方法：&lt;/p&gt;&lt;blockquote style='border:2px solid #EFEFEF;color:#333333;padding:5px 10px;'&gt;&lt;p&gt;beginPath&amp;nbsp;开始一个新路径&lt;br /&gt;moveTo&amp;nbsp;移动路径的绘图起点&lt;br /&gt;lineTo&amp;nbsp;从moveTo定义的点开始绘制连续的路径，或者从上一次的lineTo的终点开始绘制。&lt;br /&gt;closePath&amp;nbsp;连接最后的点和最初的点并关闭路径绘制&lt;br /&gt;fill&amp;nbsp;用颜色填充路径&lt;br /&gt;stroke&amp;nbsp;描变路径&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;尝试执行下面的代码：&lt;/p&gt;c.beginPath();&lt;br/&gt;c.moveTo(50,&amp;nbsp;50);&lt;br/&gt;c.lineTo(50,&amp;nbsp;250);&lt;br/&gt;c.lineTo(250,&amp;nbsp;250);&lt;br/&gt;c.closePath;&lt;br/&gt;c.fill();&lt;p&gt;执行结果为：&lt;/p&gt;&lt;p&gt;&lt;img class="alignnone" title="canvas-paths" src="http://farm6.static.flickr.com/5172/5445275668_000b7c58f1_m.jpg" alt="canvas-paths" width="208" height="207" /&gt;&lt;/p&gt;&lt;p&gt;你可以用同样的方法绘制你希望的图形，canvas还包含更高级的路径绘制，比如圆弧（可以绘制圆形）和贝塞尔曲线（用于绘制很酷的曲线效果），总之，绘制路径要比绘制矩形复杂的多。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;改变颜色&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;到目前为止，我们的示例所绘制的都是填充或描边的黑色，canvas也提供了一些属性用于改变绘制图形的颜色，它们是fillStyle和strokeStyle，它们的语法都是可以自解释的，所以我们直接来改变一个矩形的填充颜色：&lt;/p&gt;c.fillStyle&amp;nbsp;=&amp;nbsp;"rgb(255,&amp;nbsp;0,&amp;nbsp;0)";&lt;br/&gt;c.fillRect(50,&amp;nbsp;50,&amp;nbsp;100,&amp;nbsp;100);&lt;p&gt;结果：&lt;/p&gt;&lt;p&gt;&lt;img class="alignnone" title="canvas-fillStyle" src="http://farm6.static.flickr.com/5178/5445275680_58dc82498b_m.jpg" alt="canvas-fillStyle" width="107" height="107" /&gt;&lt;/p&gt;&lt;p&gt;或者，你可以改变描边的颜色：&lt;/p&gt;c.strokeStyle&amp;nbsp;=&amp;nbsp;"rgb(255,&amp;nbsp;0,&amp;nbsp;0)";&lt;br/&gt;c.strokeRect(50,&amp;nbsp;50,&amp;nbsp;100,&amp;nbsp;100);&lt;p&gt;结果：&lt;/p&gt;&lt;p&gt;&lt;img class="alignnone" title="canvas-strokeStyle" src="http://farm5.static.flickr.com/4112/5445275718_085b9c4e07_m.jpg" alt="canvas-strokeStyle" width="109" height="109" /&gt;&lt;/p&gt;&lt;p&gt;fillStyle和strokeStyle属性很漂亮的一点就是，它们都支持普通CSS颜色值，这意味着你可以使用RGB、RGBA、HSA、颜色名称以及十六进制颜色值。&lt;/p&gt;&lt;p&gt;还有一点需要指出的是，改变画布中的颜色值不会影响已经绘制的任何图形，例如，如果你绘制了一个黑色的矩形，然后设置填充为红色，接着绘制了另一个矩形，这时第一个矩形仍然为黑色。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;改变线宽&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;除了可以改变颜色，还可以利用lineWidth属性改变描边线条的宽度，按照上面的例子，改变线条宽度：&lt;/p&gt;c.lineWidth&amp;nbsp;=&amp;nbsp;20;&lt;br/&gt;c.strokeStyle&amp;nbsp;=&amp;nbsp;"#f00";&lt;br/&gt;c.strokeRect(50,&amp;nbsp;50,&amp;nbsp;100,&amp;nbsp;100);&lt;p&gt;结果：&lt;/p&gt;&lt;p&gt;&lt;img class="alignnone" title="canvas-lineWidth" src="http://farm5.static.flickr.com/4081/5444673423_370c8a9c4e_m.jpg" alt="canvas-lineWidth" width="133" height="133" /&gt;&lt;/p&gt;&lt;p&gt;同样的可以改变路径的线宽：&lt;/p&gt;c.lineWidth&amp;nbsp;=&amp;nbsp;20;&lt;br/&gt;c.beginPath();&lt;br/&gt;c.moveTo(50,&amp;nbsp;50);&lt;br/&gt;c.lineTo(50,&amp;nbsp;250);&lt;br/&gt;c.lineTo(250,&amp;nbsp;250);&lt;br/&gt;c.closePath();&lt;br/&gt;c.stroke();&lt;p&gt;结果：&lt;/p&gt;&lt;p&gt;&lt;img class="alignnone" title="canvas-lineWidth-paths" src="http://farm6.static.flickr.com/5213/5444673489_5a79a07697_m.jpg" alt="canvas-lineWidth-paths" width="240" height="240" /&gt;&lt;/p&gt;&lt;p&gt;还有一些其它的改变线条的方式，比如lineCap设置线条的末端，lineJoin设置线条的角。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;删除图形&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;最后我们来了解下如何删除已经绘制的图形，删除图形只需Javascript&amp;nbsp;API提供的一个名为clearRect的方法，其原理是使参数指定的矩形区域背景变为透明。&lt;/p&gt;&lt;p&gt;本文示例画布长宽分别为500像素，要想删除整个画布图形，可以这样做：&lt;/p&gt;c.fillRect(50,&amp;nbsp;50,&amp;nbsp;100,&amp;nbsp;100);&lt;br/&gt;c.clearRect(0,&amp;nbsp;0,&amp;nbsp;500,&amp;nbsp;500);&lt;p&gt;上面的代码执行后，你会什么都看不到，事实上填充的矩形已经绘制，只是瞬间被删除了，所以你看不到它。&lt;/p&gt;&lt;p&gt;如果你不清楚画布的具体宽高，清除整个画布可以这样：&lt;/p&gt;c.clearRect(0,&amp;nbsp;0,&amp;nbsp;canvas.width,&amp;nbsp;canvas.height);&lt;p&gt;&lt;strong&gt;删除画布中的区域&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;如果你不想删除整个画布的图形，而仅仅删除画布中的一个区域，假如，你绘制了一个黑色的正方形，旁边绘制了一个红色的正方形：&lt;/p&gt;c.fillRect(50,&amp;nbsp;50,&amp;nbsp;100,&amp;nbsp;100);&lt;br/&gt;c.fillStyle&amp;nbsp;=&amp;nbsp;"#f00";&lt;br/&gt;c.fillRect(200,&amp;nbsp;50,&amp;nbsp;100,&amp;nbsp;100);&lt;p&gt;看起来是这个样子：&lt;/p&gt;&lt;p&gt;&lt;img class="alignnone" title="canvas-clearRect" src="http://farm5.static.flickr.com/4112/5444673565_a360d6e213_m.jpg" alt="canvas-clearRect" width="240" height="104" /&gt;&lt;/p&gt;&lt;p&gt;接下来你可以通过clearRect删除黑色背景的正方形而只保留红色正方形：&lt;/p&gt;c.clearRect(50,&amp;nbsp;50,&amp;nbsp;100,&amp;nbsp;100);&lt;p&gt;注意传入clearRect的参数能确保能覆盖要被删除的图形的区域。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;结语&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;canvas易于使用、上手快速，并且强大的要死（唉，自己翻译的文章自己不敢读，太拗口了）&lt;/p&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2261901.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2011/11/24/2261901.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myssh/archive/2011/11/24/2261547.html</id><title type="text">VML标记属性说明 .</title><summary type="text">VML教程 (http://www.itlearner.com/code/vml/index.html)1. VML标记特有的通用属性（非HTML、CSS所有）属性名默认值值类型/范围用途strokeweight0.75pt=1pxnumber描述图形的边框粗度strokecolorblackcolor描述图形的边框颜色strokedtrueboolean描述图形是否使用边框fillcolorwhitecolor描述图形的背景颜色filledtrueboolean描述图形是否使用背景printtrueboolean描述图形是否允许被打印机打印coordsize1000,1000Vector2D</summary><published>2011-11-24T05:31:00Z</published><updated>2011-11-24T05:31:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2011/11/24/2261547.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2011/11/24/2261547.html"/><content type="html">&lt;p&gt;&lt;a href="http://www.itlearner.com/code/vml/index.html"&gt;VML教程&lt;/a&gt; (&lt;a href="http://www.itlearner.com/code/vml/index.html"&gt;http://www.itlearner.com/code/vml/index.html&lt;/a&gt;)&lt;/p&gt;&lt;p&gt;1. VML标记特有的通用属性（非HTML、CSS所有）&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;table style="width: 100%; color: red;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;属性名&lt;/td&gt;&lt;td&gt;默认值&lt;/td&gt;&lt;td&gt;值类型/范围&lt;/td&gt;&lt;td&gt;用途&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;strokeweight&lt;/td&gt;&lt;td&gt;0.75pt=1px&lt;/td&gt;&lt;td&gt;number&lt;/td&gt;&lt;td&gt;描述图形的边框粗度&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;strokecolor&lt;/td&gt;&lt;td&gt;black&lt;/td&gt;&lt;td&gt;color&lt;/td&gt;&lt;td&gt;描述图形的边框颜色&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;stroked&lt;/td&gt;&lt;td&gt;true&lt;/td&gt;&lt;td&gt;boolean&lt;/td&gt;&lt;td&gt;描述图形是否使用边框&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;fillcolor&lt;/td&gt;&lt;td&gt;white&lt;/td&gt;&lt;td&gt;color&lt;/td&gt;&lt;td&gt;描述图形的背景颜色&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;filled&lt;/td&gt;&lt;td&gt;true&lt;/td&gt;&lt;td&gt;boolean&lt;/td&gt;&lt;td&gt;描述图形是否使用背景&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;print&lt;/td&gt;&lt;td&gt;true&lt;/td&gt;&lt;td&gt;boolean&lt;/td&gt;&lt;td&gt;描述图形是否允许被打印机打印&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;coordsize&lt;/td&gt;&lt;td&gt;1000,1000&lt;/td&gt;&lt;td&gt;Vector2D&lt;/td&gt;&lt;td&gt;暗示图形与容器空间的大小比例&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;coordorigin&lt;/td&gt;&lt;td&gt;0 0&lt;/td&gt;&lt;td&gt;Vector2D&lt;/td&gt;&lt;td&gt;coordinate at top-left corner of element&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;wrapcoords&lt;/td&gt;&lt;td&gt;null&lt;/td&gt;&lt;td&gt;string&lt;/td&gt;&lt;td&gt;outline to use for tight text wrapping&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;2. VML标记支持的HTML通用属性&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;table style="width: 100%; color: red;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;属性名&lt;/td&gt;&lt;td&gt;默认值&lt;/td&gt;&lt;td&gt;值类型/范围&lt;/td&gt;&lt;td&gt;用途&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;id&lt;/td&gt;&lt;td&gt;null&lt;/td&gt;&lt;td&gt;string&lt;/td&gt;&lt;td&gt;定义元素的标识索引(多用于DHTML编程)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;class&lt;/td&gt;&lt;td&gt;null&lt;/td&gt;&lt;td&gt;classname&lt;/td&gt;&lt;td&gt;定义元素使用的CSS样式类&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;style&lt;/td&gt;&lt;td&gt;null&lt;/td&gt;&lt;td&gt;CSS string&lt;/td&gt;&lt;td&gt;描述图形的CSS样式表&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;title&lt;/td&gt;&lt;td&gt;null&lt;/td&gt;&lt;td&gt;string&lt;/td&gt;&lt;td&gt;定义图形的提示标题(鼠标靠近后的帮助提示)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;href&lt;/td&gt;&lt;td&gt;null&lt;/td&gt;&lt;td&gt;string&lt;/td&gt;&lt;td&gt;定义图形链接的URL地址&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;target&lt;/td&gt;&lt;td&gt;_self&lt;/td&gt;&lt;td&gt;_self/_blank/_top&lt;/td&gt;&lt;td&gt;定义图形以何种形式打开链接&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;contentEditable&lt;/td&gt;&lt;td&gt;false&lt;/td&gt;&lt;td&gt;boolean&lt;/td&gt;&lt;td&gt;描述图形内容是否允许用户编辑&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;dir&lt;/td&gt;&lt;td&gt;ltr&lt;/td&gt;&lt;td&gt;ltr/rtl&lt;/td&gt;&lt;td&gt;描述图形内容以哪种方向输出&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;disabled&lt;/td&gt;&lt;td&gt;false&lt;/td&gt;&lt;td&gt;boolean&lt;/td&gt;&lt;td&gt;描述图形能够响应用户事件触发&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;3. VML标记支持的CSS通用属性&lt;/p&gt;&lt;p&gt;其实，VML元素几乎支持所有CSS样式定义，有些HTML元素不支持的像（rotation，旋转样式），VML却支持。这里只列举部分。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;table style="width: 100%; color: red;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;属性名&lt;/td&gt;&lt;td&gt;可用值/可用值范围&lt;/td&gt;&lt;td&gt;用途&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;width&lt;/td&gt;&lt;td&gt;0-9999&lt;/td&gt;&lt;td&gt;描述宽度&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;height&lt;/td&gt;&lt;td&gt;0-9999&lt;/td&gt;&lt;td&gt;描述高度&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;position&lt;/td&gt;&lt;td&gt;static absolute fixed relative&lt;/td&gt;&lt;td&gt;描述如何定位输出&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;left&lt;/td&gt;&lt;td&gt;0-9999&lt;/td&gt;&lt;td&gt;描述距离页面位置左&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;top&lt;/td&gt;&lt;td&gt;0-9999&lt;/td&gt;&lt;td&gt;描述距离页面位置上&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;z-index&lt;/td&gt;&lt;td&gt;0-9999&lt;/td&gt;&lt;td&gt;描述3D位置&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;cursor&lt;/td&gt;&lt;td&gt;auto crosshair hand move help wait text&amp;hellip;&amp;hellip;&lt;/td&gt;&lt;td&gt;描述鼠标形状&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;zoom&lt;/td&gt;&lt;td&gt;0-99&lt;/td&gt;&lt;td&gt;描述缩放比例&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;clip&lt;/td&gt;&lt;td&gt;rect(上 右 下 左)&lt;/td&gt;&lt;td&gt;描述裁剪对象&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;border&lt;/td&gt;&lt;td&gt;0-99 style color&lt;/td&gt;&lt;td&gt;描述边框&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;display&lt;/td&gt;&lt;td&gt;block none inline list-item&lt;/td&gt;&lt;td&gt;描述显示或隐藏&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;overflow&lt;/td&gt;&lt;td&gt;visible auto hidden scroll&lt;/td&gt;&lt;td&gt;描述滚动条&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;color&lt;/td&gt;&lt;td&gt;colorstring&lt;/td&gt;&lt;td&gt;描述文本内容颜色&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;font-size&lt;/td&gt;&lt;td&gt;0-999&lt;/td&gt;&lt;td&gt;描述文本内容字号&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;filter&lt;/td&gt;&lt;td&gt;xray flipv fliph invert alpha(opacity=num)&lt;/td&gt;&lt;td&gt;描述滤镜效果&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;rotation&lt;/td&gt;&lt;td&gt;(0-9999)%360&lt;/td&gt;&lt;td&gt;描述旋转度&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;flip&lt;/td&gt;&lt;td&gt;x y&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2261547.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2011/11/24/2261547.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/myssh/archive/2011/10/25/2223658.html</id><title type="text">Oracle正则表达式函数</title><summary type="text">1、正则表达式中的元字符元字符意思例子\说明要匹配的字符是一个特殊字符、常量或者后者引用。（后引用重复上一次的匹配）\n 匹配换行符\\ 匹配 \\( 匹配 (\) 匹配 )^匹配字符串的开头位置如果A是字符串的第一个字符，^A 匹配 A$匹配字符串的末尾位置如果B是字符串的最后一个字符，$B 匹配 B*匹配前面的字符0次或多次ba*rk可以匹配 brk、bark、baark等等+匹配前面的字符1次或多次ba+rk可以匹配 bark、baark等等,但是不能匹配brk，也就是说，最少有以一次。?匹配前面的字符0次或1次ba?rk可以匹配 bark、brk等等,但是不能匹配baark。{n}匹配</summary><published>2011-10-25T04:27:00Z</published><updated>2011-10-25T04:27:00Z</updated><author><name>董广祥</name><uri>http://www.cnblogs.com/myssh/</uri></author><link rel="alternate" href="http://www.cnblogs.com/myssh/archive/2011/10/25/2223658.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/myssh/archive/2011/10/25/2223658.html"/><content type="html">&lt;div id="blog_content" class="blog_content"&gt;1、正则表达式中的元字符&lt;br /&gt;&lt;table style="width: 685px; height: 766px;" border="1" cellspacing="1" summary="" cellpadding="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;div align="center"&gt;&lt;strong&gt;元字符&lt;/strong&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div align="center"&gt;&lt;strong&gt;意思&lt;/strong&gt;&lt;/div&gt;&lt;/td&gt;&lt;td align="middle"&gt;&lt;strong&gt;例子&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div align="center"&gt;\&lt;/div&gt;&lt;/td&gt;&lt;td&gt;说明要匹配的字符是一个特殊字符、常量或者后者引用。（后引用重复上一次的匹配）&lt;/td&gt;&lt;td&gt;\n 匹配换行符&lt;br /&gt;\\ 匹配 \&lt;br /&gt;\( 匹配 (&lt;br /&gt;\) 匹配 )&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;^&lt;/td&gt;&lt;td&gt;匹配字符串的开头位置&lt;/td&gt;&lt;td&gt;如果A是字符串的第一个字符，^A 匹配 A&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div align="center"&gt;$&lt;/div&gt;&lt;/td&gt;&lt;td&gt;匹配字符串的末尾位置&lt;/td&gt;&lt;td&gt;如果B是字符串的最后一个字符，$B 匹配 B&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div align="center"&gt;*&lt;/div&gt;&lt;/td&gt;&lt;td&gt;匹配前面的字符0次或多次&lt;/td&gt;&lt;td&gt;ba*rk可以匹配 brk、bark、baark等等&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;+&lt;/td&gt;&lt;td&gt;匹配前面的字符1次或多次&lt;/td&gt;&lt;td&gt;ba+rk可以匹配 bark、baark等等,但是不能匹配brk，也就是说，最少有以一次。&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;?&lt;/td&gt;&lt;td&gt;匹配前面的字符0次或1次&lt;/td&gt;&lt;td&gt;ba?rk可以匹配 bark、brk等等,但是不能匹配baark。&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;{n}&lt;/td&gt;&lt;td&gt;匹配前面的字符恰好是n次，其中n是整数&lt;/td&gt;&lt;td&gt;hob{2}it可以匹配hobbit&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;{n,m}&lt;/td&gt;&lt;td&gt;匹配前面的字符至少是n次，最多是m次，其中n，m都是整数&lt;/td&gt;&lt;td&gt;hob{2,3}it可以匹配hobbit或者hobbbit&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;.&lt;/td&gt;&lt;td&gt;匹配除null以外的任意单个字符&lt;/td&gt;&lt;td&gt;hob.it中的.可以是任意的单个字符，如：hobsit等等&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;(pattern)&lt;/td&gt;&lt;td&gt;括号中pattern是一个子正则表达式，匹配指定pattern模式的一个子表达式。&lt;/td&gt;&lt;td&gt;如：aaa(x|y)可以匹配aaax或者aaay。&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;x|y&lt;/td&gt;&lt;td&gt;匹配&amp;ldquo;或&amp;rdquo;&lt;/td&gt;&lt;td&gt;x|y可以匹配x或者y&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;[abc]&lt;/td&gt;&lt;td&gt;可以匹配abc中的任何单个字符&lt;/td&gt;&lt;td&gt;hello[abc]可以匹配helloa,hellob,helloc&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;[a-z]&lt;/td&gt;&lt;td&gt;可以匹配指定范围内的任何单个字符&lt;/td&gt;&lt;td&gt;hell[a-z]可以匹配hello或者hellz&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;[::]&lt;/td&gt;&lt;td&gt;指定一个字符类，可以匹配该类中的任何字符&lt;/td&gt;&lt;td&gt;[:alphanum:]可以匹配字符0-9、A-Z、a-z&lt;br /&gt;[:alpha:]可以匹配字符A-Z、a-z&lt;br /&gt;[:blank:]可以匹配空格或tab键&lt;br /&gt;[:digit:]可以匹配数字0-9&lt;br /&gt;[:graph:]可以匹配非空字符&lt;br /&gt;[:lower:]可以匹配小写字母a-z&lt;br /&gt;[:print:]与[:graph:]类似，不同之处在于[:print:]包括空格字符&lt;br /&gt;[:punct:]可以匹配标点符号.,""等等&lt;br /&gt;[:space:]可以匹配所有的空字符&lt;br /&gt;[:upper:]可以匹配大写字母A-Z&lt;br /&gt;[:xdigit:]可以匹配十六进制数字0-9、A-F、a-f&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;\n&lt;/td&gt;&lt;td&gt;这是对前一次匹配命中的一个后引用，其中n是一个正整数&lt;/td&gt;&lt;td&gt;(.)\1可以匹配两个连续相同的非空字符。(.)可以匹配除null以外的任何单个字符，而\1则重复上一次匹配的内容，即再次匹配相同的字符，因此可以匹配两个连续相同的非空字符&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;2、REGEXP_LIKE(x,pattern[,match_option])用于在x中查找正则表达式pattern，该函数还可以提供一个可选的参数match_option字符串说明默认的匹配选项。match_option的取值如下：&lt;br /&gt;&amp;nbsp;&amp;lsquo;c&amp;rsquo;&amp;nbsp;&amp;nbsp; 说明在进行匹配时区分大小写（缺省值）；&lt;br /&gt;&amp;nbsp; 'i'&amp;nbsp;&amp;nbsp; 说明在进行匹配时不区分大小写；&lt;br /&gt;&amp;nbsp; 'n'&amp;nbsp;&amp;nbsp; 允许使用可以匹配任意字符的操作符；&lt;br /&gt;&amp;nbsp; 'm'&amp;nbsp;&amp;nbsp; 将x作为一个包含多行的字符串。&lt;br /&gt;&lt;div class="code_title"&gt;sql 代码&lt;/div&gt;&lt;div class="dp-highlighter"&gt;&lt;div class="bar"&gt;&amp;nbsp;&lt;/div&gt;&lt;ol class="dp-sql"&gt;&lt;li class="alt"&gt;&lt;span&gt;&lt;span class="keyword"&gt;DECLARE&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;V_FIRST_NAME&amp;nbsp;VARCHAR2(50);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;V_DOB&amp;nbsp;&lt;span class="keyword"&gt;DATE&lt;/span&gt;&lt;span&gt;;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&lt;span class="keyword"&gt;BEGIN&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="comment"&gt;--返回1965－1968你出生的FIRST_NAME以&amp;lsquo;J&amp;rsquo;开头的消费者&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;SELECT&lt;/span&gt;&lt;span&gt;&amp;nbsp;FIRST_NAME,DOB&amp;nbsp;&lt;/span&gt;&lt;span class="keyword"&gt;INTO&lt;/span&gt;&lt;span&gt;&amp;nbsp;V_FIRST_NAME,V_DOB&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;FROM&lt;/span&gt;&lt;span&gt;&amp;nbsp;CUSTOMERS&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;WHERE&lt;/span&gt;&lt;span&gt;&amp;nbsp;REGEXP_LIKE(TO_CHAR(DOB,'YYYY'),'^196[5-8]$')&amp;nbsp;&lt;/span&gt;&lt;span class="op"&gt;AND&lt;/span&gt;&lt;span&gt;&amp;nbsp;REGEXP_LIKE(FIRST_NAME,'^J');&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DBMS_OUTPUT.PUT_LINE(V_FIRST_NAME);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&lt;span class="keyword"&gt;END&lt;/span&gt;&lt;span&gt;;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;3、REGEXP_INSTR(x,pattern[,start[,occurrence[,return_option[, match_option]]]])用于在x中查找pattern。返回pattern在x中出现的位置。匹配位置从1开始。可以参考字符串函数 INSTR()，参数相关：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'start'&amp;nbsp;&amp;nbsp; 开始查找的位置；&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'occurrence'&amp;nbsp;&amp;nbsp; 说明应该返回第几次出现pattern的位置；&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'eturn_option'&amp;nbsp;&amp;nbsp; 说明应该返回什么整数。若该参数为0，则说明要返回的整数是x中的一个字符的位置；若该参数为非0的整数，则说明要返回的整数为x中出现在pattern之后的字符的位置；&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'match_option'&amp;nbsp;&amp;nbsp; 修改默认的匹配设置。&lt;br /&gt;&lt;div class="code_title"&gt;sql 代码&lt;/div&gt;&lt;div class="dp-highlighter"&gt;&lt;div class="bar"&gt;&amp;nbsp;&lt;/div&gt;&lt;ol class="dp-sql"&gt;&lt;li class="alt"&gt;&lt;span&gt;&lt;span class="keyword"&gt;DECLARE&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;V_RESULT&amp;nbsp;&lt;span class="keyword"&gt;INTEGER&lt;/span&gt;&lt;span&gt;;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&lt;span class="keyword"&gt;BEGIN&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="comment"&gt;--返回17，找出l开头的&amp;nbsp;后跟4个任意字母的单词在第一个参数中第一次出现的位置，这里是light中l的位置&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;SELECT&lt;/span&gt;&lt;span&gt;&amp;nbsp;REGEXP_INSTR('But,&amp;nbsp;soft!&amp;nbsp;What&amp;nbsp;light&amp;nbsp;through&amp;nbsp;yonder&amp;nbsp;window&amp;nbsp;breaks？','l[[:alpha:]]{4}',1,1,0)&amp;nbsp;&lt;/span&gt;&lt;span class="keyword"&gt;INTO&lt;/span&gt;&lt;span&gt;&amp;nbsp;V_RESULT&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;FROM&lt;/span&gt;&lt;span&gt;&amp;nbsp;DUAL;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DBMS_OUTPUT.PUT_LINE(V_RESULT);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="comment"&gt;--返回22，找出l开头的&amp;nbsp;后跟4个任意字母的单词在第一个参数中第一次出现的位置，这里是light中t的位置+1&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;SELECT&lt;/span&gt;&lt;span&gt;&amp;nbsp;REGEXP_INSTR('But,&amp;nbsp;soft!&amp;nbsp;What&amp;nbsp;light&amp;nbsp;through&amp;nbsp;yonder&amp;nbsp;window&amp;nbsp;breaks？','l[[:alpha:]]{4}',1,1,1)&amp;nbsp;&lt;/span&gt;&lt;span class="keyword"&gt;INTO&lt;/span&gt;&lt;span&gt;&amp;nbsp;V_RESULT&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;FROM&lt;/span&gt;&lt;span&gt;&amp;nbsp;DUAL;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DBMS_OUTPUT.PUT_LINE(V_RESULT);&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&lt;span class="keyword"&gt;END&lt;/span&gt;&lt;span&gt;;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;br /&gt;4、REGEXP_REPLACE(x,pattern[,replace_string[,start[,occurrence[, match_option]]]])用于在x中查找pattern，并将其替换为replae_string。可以参考字符串函数 REPLACE()，参数同REGEXP_INSTR函数，参考第3&lt;div class="code_title"&gt;sql 代码&lt;/div&gt;&lt;div class="dp-highlighter"&gt;&lt;div class="bar"&gt;&amp;nbsp;&lt;/div&gt;&lt;ol class="dp-sql"&gt;&lt;li class="alt"&gt;&lt;span&gt;&lt;span class="keyword"&gt;DECLARE&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;V_RESULT&amp;nbsp;VARCHAR2(255);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&lt;span class="keyword"&gt;BEGIN&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="comment"&gt;--返回But,&amp;nbsp;soft!&amp;nbsp;What&amp;nbsp;XXX&amp;nbsp;through&amp;nbsp;yonder&amp;nbsp;window&amp;nbsp;breaks？&amp;nbsp;用&amp;lsquo;XXX&amp;rsquo;代替&amp;lsquo;light&amp;rsquo;&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;SELECT&lt;/span&gt;&lt;span&gt;&amp;nbsp;REGEXP_REPLACE('But,&amp;nbsp;soft!&amp;nbsp;What&amp;nbsp;light&amp;nbsp;through&amp;nbsp;yonder&amp;nbsp;window&amp;nbsp;breaks？','l[[:alpha:]]{4}','XXX')&amp;nbsp;&lt;/span&gt;&lt;span class="keyword"&gt;INTO&lt;/span&gt;&lt;span&gt;&amp;nbsp;V_RESULT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;FROM&lt;/span&gt;&lt;span&gt;&amp;nbsp;DUAL;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DBMS_OUTPUT.PUT_LINE(V_RESULT);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&lt;span class="keyword"&gt;END&lt;/span&gt;&lt;span&gt;;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;5、REGEXP_SUBSTR(x,pattern[,start[,occurrence[, match_option]]])用于在x中查找pattern并返回。可以参考字符串函数 SUBSTR()，参数同REGEXP_INSTR函数，参考第3&lt;br /&gt;&lt;div class="code_title"&gt;sql 代码&lt;/div&gt;&lt;div class="dp-highlighter"&gt;&lt;div class="bar"&gt;&amp;nbsp;&lt;/div&gt;&lt;ol class="dp-sql"&gt;&lt;li class="alt"&gt;&lt;span&gt;&lt;span class="keyword"&gt;DECLARE&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;V_RESULT&amp;nbsp;VARCHAR2(255);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&lt;span class="keyword"&gt;BEGIN&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="comment"&gt;--返回&amp;lsquo;light&amp;rsquo;&amp;nbsp;&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;SELECT&lt;/span&gt;&lt;span&gt;&amp;nbsp;REGEXP_SUBSTR('But,&amp;nbsp;soft!&amp;nbsp;What&amp;nbsp;light&amp;nbsp;through&amp;nbsp;yonder&amp;nbsp;window&amp;nbsp;breaks？','l[[:alpha:]]{4}')&amp;nbsp;&lt;/span&gt;&lt;span class="keyword"&gt;INTO&lt;/span&gt;&lt;span&gt;&amp;nbsp;V_RESULT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="keyword"&gt;FROM&lt;/span&gt;&lt;span&gt;&amp;nbsp;DUAL;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="alt"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DBMS_OUTPUT.PUT_LINE(V_RESULT);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&lt;span class="keyword"&gt;END&lt;/span&gt;&lt;span&gt;;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/myssh/aggbug/2223658.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/myssh/archive/2011/10/25/2223658.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
