最近在看正則,於是自己動手做了乙個基於js、使用正規表示式的搜尋例項,主要功能就是在文字中搜尋特定的內容。
可以先寫個簡易的樣式:
html
id="box">
id="textcon"
rows="10"
cols="70">
textarea>
please enter content id="searchcon"
type="text"/>
p>
form>
id="search">searchbutton>
div>
id="resultcon">
div>
css
type="text/css">
#box
#resultcon
span
style>
然後就是這個例項最關鍵的js
document.getelementbyid("search").onclick=function
() newstring+=textcon.substring(start,textcon.length)+"
"; //輸出顯示
document.getelementbyid("resultcon").innerhtml=newstring;
}script>
js的思路就是在源文字以關鍵字(即搜尋物件)為拆分點,將源文字拆開,然後為關鍵字新增高亮,再按原文順序重新組合成文字輸出。
注意:請先寫好源文字,在搜尋框裡輸入的內容如果符合正則的寫法,即可搜得相應內容(不需要兩端加「/」)。
關鍵是明白arr.index、arr[0]和re.lastindex正則中的.lastindex 返回當前匹配結果下一次匹配的起始位置。也可以手動設定lastindex的值,用於設定指定的起始位置。
我感覺這是個常用且好用的方法,它的返回值很豐富。
exec()方法可以返回匹配的結果,以及結果在字串中的索引和下一次匹配的起始位置。
如果正規表示式沒有匹配到結果,那麼返回的值就是 null。
exec方法在匹配到的情況下,返回的是乙個陣列,陣列的格式如下:
var
result = /bcd/.exec('abcdaefgbcd');
result[0] // -> 當前匹配到的結果: bcd
result.input // -> 進行匹配操作的字串: abcdaefgbcd
result.index
// -> 當前匹配結果首字母在字串中的索引: 1
如有錯誤,請幫忙指正,謝謝。 乙個簡單的爬蟲例項
獲取網頁html文字內容 usr bin python coding utf 8 import urllib import re 根據url獲取網頁html內容 defgethtmlcontent url page urllib.urlopen url return page.read 從html中...
乙個簡單的Ant例項
在eclipse裡面做web專案確實是一件比較煩人的事,所有的事都得自己做。但卻不失為乙個學習,提高自己知識的好機會。像myeclipse,只要發布一下,web應用就可以訪問了,但是eclipse裡面,需要自己手動編譯,手動打包發布到伺服器才能訪問。下面就是乙個簡單用ant發布web應用的例子,別小...
ajax最簡單的乙個例項
最近在學習ajax的一些東西,下面是學習時寫的乙個最簡單的例子。href.html是頁面靜態檔案。ajax.js是js指令碼。for.php是要呼叫的php指令碼。如下 href.html檔案 如下 hopelightsbt ajax.js 如下 判斷瀏覽器是否支援xmlhttprequest物件 ...