国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
網(wǎng)站實(shí)用技巧(上)

根據(jù)時(shí)段自動(dòng)切換你的站點(diǎn)CSS風(fēng)格


網(wǎng)站能切換幾套CSS風(fēng)格早已不是什么新鮮事了。大家也都知道怎么去弄。早上發(fā)現(xiàn)一個(gè)有意思得站點(diǎn) http://www.leemunroe.com/
  同樣是切換風(fēng)格。不過他做了點(diǎn)小小的調(diào)整。站點(diǎn)會(huì)根據(jù)當(dāng)時(shí)的時(shí)間自動(dòng)調(diào)整站點(diǎn)風(fēng)格。作者為站點(diǎn)制作了早上、下午、夜晚三套皮膚,主要是分別制作了背景。12點(diǎn)以前系統(tǒng)會(huì)使用早上的皮膚,過了12點(diǎn),站點(diǎn)會(huì)自動(dòng)替換成下午的風(fēng)格,5點(diǎn)后則替換成夜晚的風(fēng)格。

  主要的功能實(shí)現(xiàn)是靠在頭部的這段判斷代碼,很容易理解。有興趣可以自己試試。

CSS版代碼如下:

Html代碼
  1. <link rel="stylesheet" type="text/css"    
  2. href="<?php $hour = date("H"); if ($hour < 12) echo "morning.css"; elseif ($hour < 17) echo "day.css"; else echo "night.css"; ?>  
  3. />   


ASP版代碼如下:

Html代碼
  1. <link rel="stylesheet" type="text/css" href="<%   
  2. if hour(now)<12 then    
  3.   response.write "a.css"   
  4. else    
  5.   if hour(now)<17 then   
  6.     response.write "b.css"   
  7.   else   
  8.     response.write "c.css"   
  9.   end if   
  10. end if   
  11. %> " />  

利用Google實(shí)現(xiàn)站內(nèi)搜索

一分鐘加入"搜索本站"功能
http://www.googlechinablog.com/2006/12/blog-post_22.html


用Google給你的站內(nèi)搜索加上統(tǒng)計(jì)功能
http://www.newsunday.com/post/custom_search_engine.html


Google 公共服務(wù)搜索
http://www.google.cn/intl/zh-CN/searchcode.html

幾種所見所得的在線編輯器的分析

原貼來自: http://bbs.chinahtml.com/showthread.php?p=16247#post16247
作者:blue2004(轉(zhuǎn)載請(qǐng)標(biāo)明)
1.FCKeditor 編輯器
FCKeditor is compatible with most internet browsers which include: IE 5.5+ (Windows), Firefox 1.0+, Mozilla 1.3+ and Netscape 7+.
最新版本:FCKeditor 2.0
語言環(huán)境:多國語言
特性功能:所見所得,支持平臺(tái)眾多,支持XHTML 1.0,文本格式設(shè)置,常見的編輯,復(fù)制,粘貼,撤銷,文件上傳等功能
授權(quán)方式:Open Source & Free
官方地址:http://www.fckeditor.net/
下載地址:http://www.fckeditor.net/download/default.html
演示:http://www.fckeditor.net/demo/default.html
小節(jié):FCKeditor的2.0版比1.6版有了許多的改進(jìn)。首先是FCKeditor的文件結(jié)構(gòu)更加清晰,
可以更方便地將其部署在自己的系統(tǒng)中。另外2.0版開始支持了Firefox瀏覽器
2.WebEditor
WebEditor系列文檔控件,采用了ESS專業(yè)電子簽名和電子蓋章的技術(shù),除繼續(xù)支持手寫簽名,電子印章,痕跡保留外,
該版本采用了我們強(qiáng)大的B/S通訊技術(shù),能夠自由的將服務(wù)器數(shù)據(jù)庫
最新版本:WebEditor[V4.3.0.0 OCX版]
語言環(huán)境:簡體中文
技術(shù)特性
采用IE5.0以上版本內(nèi)置的傳輸協(xié)議,通訊性能穩(wěn)定,高效。
采用標(biāo)準(zhǔn)HTTP通訊端口80,使用方便,無需特別配置、安全性好、更無需特別設(shè)置防火墻。
采用插件技術(shù),可以完全融入IE瀏覽器中,方便系統(tǒng)維護(hù)、方便用戶操作。
采用自定義協(xié)議包進(jìn)行數(shù)據(jù)的組裝和分析,系統(tǒng)開放性好,便于二次開發(fā)。
采用了Com組件和JavaBean組件技術(shù),很好的實(shí)現(xiàn)了跨平臺(tái)系統(tǒng),便于開發(fā)。
官方地址:http://www.dragongod.com/
演示:http://www.dragongod.com/WebEditor/Demo.asp
下載:http://www.dragongod.com/download/index.asp#item1
小節(jié):這個(gè)編輯器很具有中國特色的,但必須支持安裝WebEditor插件,才能正常運(yùn)行
對(duì)于很多用戶來說,,這個(gè)是無法接收的.
3.InnovaStudio WYSIWYG Editor在線編輯器WYSIWYG 英文:What You See Is What You Get(所見所得)
一款基于web的WYSIWYG(所見即所得)的HTML編輯器,支持ASP, PHP, ASP.NET
最新版本:InnovaStudio WYSIWYG Editor version 2.9
功能特性:快速加載,融合所有的HTML標(biāo)簽,全屏編輯模式,所見所得預(yù)覽,拼寫檢查.
特有的嵌入式WEB編輯.
官方:http://www.innovastudio.com/
演示:http://www.innovastudio.com/editor_tutorial.asp
下載:官方好像都是收費(fèi)的,,自己去網(wǎng)上搜索找找,好像有人已經(jīng)做過有2.0的漢化版

小節(jié):采用DHTML, JavaScript 構(gòu)件的WYSIWYG也有很多不足之處,由于代碼放在遠(yuǎn)程服務(wù)器,
一些控件事先沒有下載到客戶端,使得一些操作速度變慢,那些加入了ActiveX 控件的更慢,
另外它無法在網(wǎng)頁里直接調(diào)用CSS,所以在操作框里的界面效果和尺寸和實(shí)際上的界面有差距。
有很多WYSIWYG對(duì)各種瀏覽器還不兼容,而且有的也要在IE的高版本下才能正常運(yùn)行(此段出自老鬼的blog).

4.eWebEditor在線編輯器
eWebEditor是基于網(wǎng)頁的、所見即所得的在線HTML編輯器。她能夠在網(wǎng)頁上實(shí)現(xiàn)許多桌面編輯軟件
(如:Word)所具有的強(qiáng)大可視編輯功能;她是一個(gè)真正的綠色軟件,不需要在計(jì)算機(jī)上安裝
任何的客戶端軟件;她的易用使得WEB開發(fā)人員只要一行代碼即可完成調(diào)用。
最新版本:Version 3.6 (ASP版、PHP版、JSP版、ASP.NET版)
官方:http://www.ewebsoft.com/
演示:http://ewebeditor.webasp.net/demo.asp
下載:http://ewebeditor.webasp.net/download.asp
功能特性:
純靜態(tài):大大提高了效率,最佳的融入您的產(chǎn)品;
多樣式支持:您只需要在您的整個(gè)網(wǎng)站中使用一個(gè)eWebEditor;
自動(dòng)提交:無需在提交按鈕中加入腳本進(jìn)行處理;
自動(dòng)獲取遠(yuǎn)程文件:把別人服務(wù)器上的圖片等文件自動(dòng)傳到自己的服務(wù)器;
相對(duì)或絕對(duì)路徑:完全擺脫了站點(diǎn)或系統(tǒng)或目錄遷移而帶來的路徑問題;
圖形熱點(diǎn)鏈接:始創(chuàng)能夠在線編輯實(shí)現(xiàn)圖形的熱點(diǎn)鏈接功能;
多種編輯模式:HTML代碼模式、可視設(shè)計(jì)模式、純文本模式、預(yù)覽模式;
大小自適應(yīng):可以按你調(diào)用的寬度和高度自適應(yīng)編輯器的大小;
內(nèi)附文件上傳功能:自帶有從客戶端直接上傳到服務(wù)器端的功能;
完善的接口:您可以通過接口實(shí)時(shí)控制或者獲取編輯器的內(nèi)容或者狀態(tài);

小節(jié):我個(gè)人比較推薦這個(gè)編輯器,為什么呢?除了他是國產(chǎn)的外,比較符合國人的習(xí)慣,另外也可能是眾多編輯器,
唯一還帶后臺(tái)管理模式,可以直接在后臺(tái)管理編輯模式,
另外接口定制非常容易,具體的自己可以去官方下載回來看看.

5.htmlarea
htmlarea.com is a directory of browser based wysiwyg editor components for use
in CMS (content management software) and other web software.
htmlArea是一款非常優(yōu)秀的所見即所得編輯器,被使用在CMS系統(tǒng)或其他的WEB系統(tǒng)中..
語言環(huán)境:多國語言版
版本:version 3.0
官方:http://www.htmlarea.com/
演示:沒找到,
下載:官方?jīng)]找到下載地址,我自己找了個(gè)3.0的版本 http://www.92key.com/mp3/chinahtml@_HTMLArea3.rar
小節(jié):這個(gè)編輯器調(diào)用也非常方便,
已經(jīng)廣泛用在各種CMS和blog系統(tǒng)里,記得bo-blog,phpArticle里整合了這個(gè)編輯器.

6.XStandard XHTML (Strict or 1.1) WYSIWYG Editor 也是所見所得,比起前幾個(gè),,它已經(jīng)完全支持XHTML 1.1的嚴(yán)格驗(yàn)證,
這個(gè)非常厲害 @@
版本:XStandard Version 1.6.2
官方:http://xstandard.com/
下載:http://xstandard.com/download.asp
演示:
小節(jié):這個(gè)編輯器,我也很少在國內(nèi)的CMS,blog上見到有人使用,當(dāng)然一個(gè)原因就是它是一個(gè)共享軟件.
XStandard Lite是免費(fèi)的
XStandard Pro是30天的試用期,而且價(jià)格還不菲$179

7.Cross-Browser Rich Text Editor
The cross-browser rich-text editor (RTE) is based on the designMode() functionality introduced in Internet Explorer 5, and implemented in Mozilla 1.3+ using the Mozilla Rich Text Editing API. The cross-browser rich-text editor now includes table support (as of 2/10/2005) as well as an option to generate xhtml-compliant code
官方:http://www.kevinroth.com
演示:http://www.kevinroth.com/rte/demo.htm
下載:http://www.kevinroth.com/rte/demo.htm
小節(jié):這個(gè)編輯器更少看到有人用,可能是我自己孤陋寡聞..

以上的幾種編輯器總體都不錯(cuò),有心去找找,網(wǎng)上還有不少不錯(cuò)的編輯器,,找到一個(gè)合適自己的就行了,,
對(duì)于那些大型的CMS開發(fā)者,一個(gè)好的編輯器能省了使用者很多不必要的操作,
而且使web代碼更為規(guī)范,清晰
以上內(nèi)容均屬于一家之言,如有紕漏,請(qǐng)指出,歡迎大家討論..

抽象出JSCalendar,可直接使用,非常簡單

1.引入JSCalendar
Html代碼
  1. <!--導(dǎo)入calendar -->  
  2. <script type="text/javascript" src="styles/calendar/calendar.js"></script>  
  • <script type="text/javascript" src="styles/calendar/calendar-setup.js"></script>  
  • <script type="text/javascript" src="styles/calendar/lang/calendar-en.js"></script>  
  • <link href="styles/calendar/calendar-win2k-cold-1.css" type="text/css" rel="stylesheet"/>  


  • 2.直接使用
    Html代碼
    1. <input type="text" id="cal-field-1" name="duedate" value=""/>      
    2.                     <button type="button" id="cal-button-1">...</button>  
    3.                                 <script type="text/javascript">  
    4.                                 Calendar.setup({   
    5.                                 inputField    : "cal-field-1",   
    6.                                 ifFormat    : "%Y-%m-%d",    
    7.                                 button        : "cal-button-1"});   
    8.                                 </script>  

    注意:
    inputField  : "publisherDate",      // id of the input field
    ifFormat    : "%Y-%m-%d",       // the date format
    button      : "publisherDateBt"    // id of the button
    [整理] 頁面跳轉(zhuǎn)代碼
    這年頭,真是好記性不如爛筆頭。學(xué)的快,忘的快。剛才工作中要用到頁面跳轉(zhuǎn),卻又記不清楚了。

    故特意整理了一下,用做以后參考。

    第一篇: JavaScript 跳轉(zhuǎn)

    方法一:

    <script language="javascript">
        window.location = "http://www.baidu.com";
    </script>


    方法二:

    <script language="javascript">
        document.location = "http://www.baidu.com";
    </script>


    方法三: (帶進(jìn)度條)

    <html>
    <head>
    <meta http-equiv="Content-Language" content="zh-cn">
    <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312">
    <title>跳轉(zhuǎn)到baidu.com</title>
    </head>
    <body>
    <form name=loading>
    <P align=center><FONT face=Arial color=#0066ff size=2>loading...</FONT>
    <INPUT style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bolder; PADDING-BOTTOM: 0px; COLOR: #0066ff; BORDER-TOP-style: none; PADDING-TOP: 0px; FONT-FAMILY: Arial; BORDER-RIGHT-style: none; BORDER-LEFT-style: none; BACKGROUND-COLOR: white; BORDER-BOTTOM-style: none"
    size=46 name=chart>
    <BR>
    <INPUT style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; COLOR: #0066ff; BORDER-BOTTOM: medium none; TEXT-ALIGN: center" size=47 name=percent>
    <script language="javascript">
    var bar=0
    var line="||"
    var amount="||"
    count()
    function count(){
        bar=bar+2
        amount =amount + line
        document.loading.chart.value=amount
        document.loading.percent.value=bar+"%"
        if (bar<99){
            setTimeout("count()",100);
        }else{
            window.location = "http://www.baidu.com/";
        }
    }
    </script>
    </P>
    </form>
    </body>
    </html>


    第二篇: 頁面跳轉(zhuǎn)

    <head>
    <meta http-equiv="refresh" content="10; url=http://www.baidu.com">
    </head>


    第三篇: 動(dòng)態(tài)頁面跳轉(zhuǎn)

    方法一: PHP 跳轉(zhuǎn)

    <php
    header("location: http://www.baidu.com");
    >


    方法二: ASP 跳轉(zhuǎn)

    <%
    response.redirect "http://www.baidu.com"
    %>

    FYI:
    <%
    Dim ID1
    Dim ID2
    dim str
    ID1 = Request("forumID")
    ID2 = Request("threadID")
    str="/blog/threadview.asp?forumID="& ID1 &"&threadID=" & ID2
    response.redirect str
    %>

     

    正則表達(dá)式學(xué)習(xí)

    正則表達(dá)式,是用來匹配字符串的一種工具。比如說:要驗(yàn)證一個(gè)電子郵件地址是否合法,要在一個(gè)html源文件中找出所有的以<Hn>...</Hn>標(biāo)識(shí)的那部分。還比如在delphi中,我們可以利用支持正則表達(dá)式的cxMaskEdit控件來格式化輸入。

    一、匹配單個(gè)字符
    字面匹配
    字面匹配就是按原原本本的匹配文字,比如說:
    字符串:i have a dream.
    正則表達(dá)多:rea
    那麼被匹配結(jié)果是:i have a dream.

    任意(任一)匹配
    任意匹配就是以含有特定意義的通配符來匹配,就像SQL中的下劃線,它匹配任意一個(gè)字符。在正測(cè)表達(dá)式中,此通配符為半角句點(diǎn).舉例如下:
    字符串:i have a dream.
    正則表達(dá)式:r.a
    那麼被匹配結(jié)果是:i have a dream.
    說明:如果.匹配任一字符,然只想匹配.本身,方法是在其前面加上右斜線,就如同c語言中的轉(zhuǎn)義字符,即\.,如前例:
    字符串:i have a dream.
    正則表達(dá)式:\.
    那麼被匹配結(jié)果是:i have a dream.
    像這類的轉(zhuǎn)意字符還有很多,在後面的部分會(huì)有提到。

    二、枚舉型匹配
    多選一匹配
    多選一匹配相當(dāng)於程序c語言中的枚舉數(shù)據(jù)類型,它是以方框號(hào)來描述的,舉例來說:
    字符串:i have a dream,the dream was to be a doctor.
    正則表達(dá)式:t[hbr]e
    那麼匹配結(jié)果是:i have a dream,the dream was to be a doctor.

    多選一匹配的區(qū)間表示
    舉例來說:
    字符串:
    mydoc1.doc
    mydoc2.doc
    mysheet1.xls
    file5.txt
    正則表達(dá)式:[a-z]c[1-9]\.
    那麼匹配結(jié)果是:
    mydoc1.doc
    mydoc2.doc
    mysheet1.xls
    file5.txt

    "Anything But"匹配
    意思是除...之外,就是說匹配除了指定字符之外的匹配,表示方法是在表式前加上^,舉例來說:
    字符串:
    apac1.xls
    europe2.xls
    sam.xls
    正則表達(dá)式:[ns]a[^0-9]\.xls
    那麼匹配結(jié)果是:
    europe2.xls
    sam.xls
    na1.xls


    三、元字符
    元字符,就是在正則表達(dá)式中,用於描述字符的字符,如前面的.,它代表任意一個(gè)字符。
    再舉例說,前面講到的方括號(hào)用於描述枚舉型匹配,那麼如果要表示方括號(hào)本身,就需要在其前面加上右斜線,如:
    字符串:
    var myArray = new Array();
    ...
    if (myArray[0] == 0) {
    ...
    }
    正則表達(dá)式:myArray\[0\]
    匹配結(jié)果:
    var myArray = new Array();
    ....
    if (myArray[0] == 0) {
    ...
    }

    下表列出幾個(gè)比較常見的元字符
    --------------------
    [\b]    退格符
    \n 換行符
    \r 回車符
    \t Tab
    \d 數(shù)字(等價(jià)於[0-9])
    \D 非數(shù)字(等價(jià)於[^0-9])
    \w 字母(等價(jià)於[a-zA-Z0-9_])
    \W 非字母(等價(jià)於[^a-zA-Z0-9_])
    \s 任意空白字符(等價(jià)於[\f\n\r\t\v])
    \S 任意非空白字符(等價(jià)於[^\f\n\r\t\v])
    -----------------------

    四、重復(fù)匹配
    重復(fù)匹配就是指匹配多次,下面舉例說明一個(gè)多次匹配的例子這個(gè)例子匹配文本中所有的電郵地址:
    文本:
    Send personal email to ben@forta.com. For questions about a book use support@forta.com. Feel free to send unsolicited email to spam@forta.com (wouldn't it be nice if it were that simple, huh?).
    正剛表達(dá)式:
    \w+@\w+\.\w+
    匹配結(jié)果:
    Send personal email to ben@forta.com. For questions about a book use support@forta.com. Feel free to send unsolicited email to spam@forta.com (wouldn't it be nice if it were that simple, huh?).

    說明:上面的正則表達(dá)式中,+代表其前置內(nèi)容可重復(fù)一或多遍。
    與+類似的還有*和?,*代表其前置內(nèi)容可重復(fù)零或多遍,?代表其前置內(nèi)容可重復(fù)零或一遍。

    指定重復(fù)次數(shù)的重復(fù)匹配
    若要指定重復(fù)次數(shù),語法為{n},舉例說明:
    文本:
    <BODY BGCOLOR="#336633" TEXT="#FFFFFF"
          MARGINWIDTH="0" MARGINHEIGHT="0"
          TOPMARGIN="0" LEFTMARGIN="0">
    正則表達(dá)式:
    #[\d]{6}
    匹配結(jié)果:
    <BODY BGCOLOR="#336633" TEXT="#FFFFFF"
          MARGINWIDTH="0" MARGINHEIGHT="0"
          TOPMARGIN="0" LEFTMARGIN="0">


    指定重復(fù)次數(shù)區(qū)間的重復(fù)匹配
    語法為{n,m}{n,},舉例說明:
    文本:
    /8/03
    10-6-2004
    2/2/2
    01-01-01
    正則表達(dá)式:
    \d{1,2}[-\/]\d{1,2}[-\/]\d{2,4}
    匹配結(jié)果:
    /8/03
    10-6-2004
    2/2/2
    01-01-01

    幾個(gè)等價(jià)的語法標(biāo)識(shí)
    --------------
    *   *?
    +   +?
    {n,}    {n,}?
    --------------

    五、起止符
    單詞起止
    看下面這個(gè)例子。
    文本:
    The cat scattered his food all over the room.
    正則表達(dá)式:
    cat
    匹配結(jié)果:
    The cat scattered his food all over the room.

    再看下面這個(gè)例子。
    文本:
    The cat scattered his food all over the room.
    正則表達(dá)式:
    \bcat\b
    匹配結(jié)果:
    The cat scattered his food all over the room.

    對(duì)比以上兩個(gè)例子,我們可以看出來\b是一個(gè)起止符,表示其前或其後沒有其它非空字符,相當(dāng)於匹配一個(gè)完整的單詞。

    再看兩個(gè)例子,加深對(duì)\b的理解。
    文本:
    The captain wore his cap and cape proudly as he sat listening to the recap of how his crew saved the men from a capsized vessel.
    正則表達(dá)式:
    \bcat
    匹配結(jié)果:
    The captain wore his cap and cape proudly as he sat listening to the recap of how his crew saved the men from a capsized vessel.

    文本:
    The captain wore his cap and cape proudly as he sat listening to the recap of how his crew saved the men from a capsized vessel.
    正則表達(dá)式:
    cat\b
    匹配結(jié)果:
    The captain wore his cap and cape proudly as he sat listening to the recap of how his crew saved the men from a capsized vessel.

    行起止
    如果說想要匹配jave語言代碼一整行單行的注釋,可以參考下面這個(gè)例子。
    文本:
    function doSpellCheck(form, field) {
       // Make sure not empty
       if (field.value == '') {
          return false;
       }
       // Init
       var windowName='spellWindow';
       var spellCheckURL='spell.cfm?formname=comment&fieldname='+field.name;
    ...
       // Done
       return false;
    }
    正則表達(dá)式:
    ^\s*//[\n\r]*$
    匹配結(jié)果:
    function doSpellCheck(form, field) {
       // Make sure not empty
       if (field.value == '') {
          return false;
       }
       // Init
       var windowName='spellWindow';
       var spellCheckURL='spell.cfm?formname=comment&fieldname='+field.name;
    ...
       // Done
       return false;
    }
    說明:
    如前所講,元字符^如果出現(xiàn)在[]中,表示否定,否則表示從行的起始;
    元字符$表示至行的結(jié)束。

    六、SubExpression
    SubExpression是子表達(dá)式的意思,將正則表達(dá)式分層,一個(gè)表達(dá)式中可以包含子表達(dá)式,SubExpression用圓括號(hào)()來分隔,()內(nèi)的表達(dá)式作為一個(gè)個(gè)體來對(duì)待,考慮下面這個(gè)例子。
    文本:
    Hello, my name is Ben Forta, and I am the author of books on SQL, ColdFusion, WAP,Windows  2000, and other subjects.
    正則表達(dá)式:
     {2}
    匹配結(jié)果:
    Hello, my name is Ben Forta, and I am the author of books on SQL, ColdFusion, WAP,Windows  2000, and other subjects.

    說明:為什麼會(huì)沒匹配到呢?因?yàn)閧2}只修飾其前一個(gè)描述符,也就是;,所以這樣是匹配不到的。但是如果正則表達(dá)式是:
    ( ){2}
    則匹配結(jié)果為:
    Hello, my name is Ben Forta, and I am the author of books on SQL, ColdFusion, WAP,Windows  2000, and other subjects.

    子表達(dá)式的嵌套與枚舉
    SubExpression是可以嵌套的,看下面這個(gè)例子。
    假設(shè)我們要匹配一段文字中的考試成績,這個(gè)成績是百分制的數(shù)字,小數(shù)位最多只有一位,且必須是0.5,假設(shè)文本如下:
    小明的考試成績是95.5,小華的考試成績是100,小劉的成績是32,小張的成績是76.3。
    正則表達(dá)式:
    ((0|[1-9][\d])(\.5))|(0|[1-9][\d])|100
    那麼匹配結(jié)果是:
    小明的考試成績是95.5,小華的考試成績是100,小劉的成績是32,小張的成績是76.3。

    說明:多外並列的多選一的subexpression之間用|隔開,表示或者的意思。


    七、前引匹配
    請(qǐng)看下面這個(gè)例子。
    文本:
    <H2>Wireless</H2>
    Information about Bluetooth, 802.11, and more.
    <H2>This is not valid HTML</H3>
    正則表達(dá)式:
    <[hH][1-6]>.*?</[hH][1-6]>
    匹配結(jié)果:
    <H2>Wireless</H2>
    Information about Bluetooth, 802.11, and more.
    <H2>This is not valid HTML</H3>

    很明顯,顯後一行<H2>This is not valid HTML</H3>的匹配結(jié)果不是我們想要的,因?yàn)樗且?lt;H2>開頭卻以</H3>結(jié)尾。
    那麼如果要做這一點(diǎn),正則表達(dá)式該如何寫呢?
    可以這樣寫:
    <[hH]([1-6])>.*?</[hH]\1>
    那麼這樣的話,上述例子的匹配結(jié)果就是:
    <H2>Wireless</H2>
    Information about Bluetooth, 802.11, and more.
    <H2>This is not valid HTML</H3>

    說明:\1表示參照引用前面表達(dá)式中的第一個(gè)subexpression,如果是\2,就表示參照引用前面表達(dá)式中的第二個(gè)subexpression.可以看出上述例子中\(zhòng)1參照引用了([1-6]),這個(gè)“參照引用”含有一個(gè)順序一致的意思,就是說,如果([1-6])匹配的是1,那麼這裡也只能匹配1,如果([1-6])匹配的是2,這裡也只能匹配2。

    八、頭尾條件匹配
    舉例說文本:
    <title>some words</title>
    我只想要匹配以<title>開始,並以</title>結(jié)束的內(nèi)容,但匹配的結(jié)果不要包含<title>和</title>本身。那麼,正則表達(dá)式可以這樣寫:
    (?<=<title>).*(?=</title>)
    這樣的話匹配結(jié)果就是:
    <title>some words</title>

    說明:?<=後跟著的是匹配的結(jié)果的前置內(nèi)容,?=跟著的是匹配結(jié)果的後置內(nèi)容。而且,如果前置或後置內(nèi)容是多個(gè)字符的話,請(qǐng)用()將其包起來。

    相反的情況
    好,那麼我們很自然的會(huì)想到,我要匹配不以<title>和</title>為起始的內(nèi)容。這時(shí),用另外兩個(gè)語法符號(hào):
    (?!)和(?<!)
    如下例。
    文本:
    <title>some words</title>
    <body>some words</body>
    正則表達(dá)式:
    (?<!<title>).*(?!</title>)
    匹配結(jié)果如下:
    <title>some words</title>
    <body>some words</body>
     
     
    本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
    打開APP,閱讀全文并永久保存 查看更多類似文章
    猜你喜歡
    類似文章
    ASP.NET MVC 視圖(四)
    實(shí)用ExtJS教程100例-001:開天辟地的Hello World
    sdcms添加在線提交功能
    Asp.net MVC 3實(shí)例學(xué)習(xí)之ExtShop(一)————?jiǎng)?chuàng)建應(yīng)用并設(shè)置開發(fā)環(huán)境 收藏
    加密你的html源代碼 統(tǒng)一教學(xué)網(wǎng)
    面向?yàn)g覽器的動(dòng)態(tài) SVG
    更多類似文章 >>
    生活服務(wù)
    分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
    綁定賬號(hào)成功
    后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
    如果VIP功能使用有故障,
    可點(diǎn)擊這里聯(lián)系客服!

    聯(lián)系客服