主頁 > 知識庫 > Javascript正則表達式測試網(wǎng)頁

Javascript正則表達式測試網(wǎng)頁

熱門標簽:廣西智能外呼系統(tǒng)多少錢 提高電話機器人接通率 地圖標注與公司業(yè)務關系 大學校門地圖標注 福建微碼電話機器人 平?jīng)龈叩碌貓D標注商戶要收費嗎 荊州智能電銷機器人 銷售電銷機器人詐騙 外呼系統(tǒng)api對接
你平時如何測試正則表達式?直接寫在大段的代碼中,然后等待程序運行到那里,再用alert顯示結果?或者是臨時寫一個頁面,測試完成后把它丟掉?



你可以試一下我這個頁面,雖然它很粗糙,但是測試正則表達式也足夠了:))



一、說明:

1. 我的本意為交流技術.本人水平很菜.因此所貼出的代碼中,會有不足之處.

2. 代碼可任意修改.如果你覺得你修改過的代碼比我的好,可將它貼出,我非常感謝.

3. 我對javascript的規(guī)范并不很熟悉.我的經(jīng)驗來自于開發(fā).因此,若你對它有更好的見解,歡迎提出,我非常感謝.



二、測試用例:



1. 檢查字符串中是否有非數(shù)字的字符:

test regex: \D

test regex flags: g

test string: 1234g56t78



2. 檢查字符串中是否有非0-9、a~z、A-Z、_的字符:

test regex: \W

test regex flags: g

test string: i'm a pig! yes I'm!



3. 匹配字符串中的實數(shù):



test regex: ([\d]+])\.([\d]+)

test regex flags: g

test string: float1234.58.723c65.183



三、程序代碼:



!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

HTML>

HEAD>

TITLE>Javascript regex test page/TITLE>

META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=GB2312">

SCRIPT>

/**

* Method 測試正則表達式函數(shù)

* @param method 接收到的正則表達式類的方法

*/

function check(method)

{

// 將用戶輸入的正則表達式的標志轉換為小寫

form1.flags.value = form1.flags.value.toLowerCase();



// 如果含有不是g、i、m的字符, 則 提示并返回

if ( form1.flags.value.search(/[^g|i|m]/g) != -1 )

{

alert("flags only can be g, i, m");

return;

}



// 利用用戶輸入的字符串和標志建立正則表達式

var re = new RegExp(form1.regex.value, form1.flags.value);



// 獲得并顯示生成的正則表達式的字符串形式

destRegex.innerText = re.toString() + ' ';



// 定義 返回值

var cr;



ex = "new RegExp('" + form1.regex.value + "', '" + form1.flags.value + "').";



// 根據(jù)用戶選擇的方法, 進行相應的調用

switch ( method )

{

case '0': // 正則表達式的 exec 方法

cr = re.exec(form1.string.value);

ex = ex + "exec('" + form1.string.value + "')";

break;



case '1': // 正則表達式的 test 方法

cr = re.test(form1.string.value);

ex = ex + "test('" + form1.string.value + "')";

break;



case '2': // 字符串類的 match 方法

cr = form1.string.value.match(re);

ex = "'" + form1.string.value + "'.match(" + re.toString() + ")";

break;



case '3': // 字符串類的 search 方法

cr = form1.string.value.search(re);

ex = "'" + form1.string.value + "'.search(" + re.toString() + ")";

break;



case '4': // 字符串類的 replace 方法

cr = form1.string.value.replace(re);

ex = "'" + form1.string.value + "'.replace(" + re.toString() + ")";

break;



case '5': // 字符串類的 split 方法

cr = form1.string.value.split(re);

ex = "'" + form1.string.value + "'.split(" + re.toString() + ")";

break;

}



// 獲得并顯示表達式

expression.innerText = ex;



// 獲得并顯示計算結果的類型

returnType.innerText = typeof(cr);



// 定義結果

var result = '';



if ( cr != null typeof(cr) == 'object' cr.length != null ) // 如果計算結果是一個數(shù)組, 則取出所有數(shù)組的值

{

for ( i = 0; i cr.length; i++ )

{

result += "array[" + i + "] = '" + cr[i] + "'\n";

}

}

else

if ( cr != null ) // 如果計算結果不為null, 則取出計算結果的值

{

result = cr;

}



// 獲得并顯示結果

matchResult.innerText = result + ' ';



// 獲得并顯示正則表達式的lastIndex屬性

lastIndex.innerText = re.lastIndex + ' ';

}

/SCRIPT>

/HEAD>



BODY ALIGN=CENTER>

FORM NAME="form1" METHOD="post" ACTION="" ALIGN=CENTER>

TABLE BORDER="1">

TR>

TD COLSPAN="2" ALIGN="CENTER">test javascript regex/TD>

/TR>

TR>

TD>test regex:/TD>

TD>INPUT NAME="regex" TYPE="text">/TD>

/TR>

TR>

TD>test regex flags:/TD>

TD>INPUT NAME="flags" TYPE="text" ID="flags">/TD>

/TR>

TR>

TD>test string:/TD>

TD>INPUT NAME="string" TYPE="text">/TD>

/TR>

TR>

TD>select method:/TD>

TD ALIGN="CENTER">

SELECT NAME="select" onChange="check(this.value)">

OPTION VALUE="0">exec/OPTION>

OPTION VALUE="1">test/OPTION>

OPTION VALUE="2">match/OPTION>

OPTION VALUE="3">search/OPTION>

OPTION VALUE="4">replace/OPTION>

OPTION VALUE="5">split/OPTION>

/SELECT>

INPUT VALUE='run' onclick="check(form1.select.value)" TYPE=button>

/TD>

/TR>

TR>

TD>dest regex:/TD>

TD STYLE="color:blue" ID=destRegex>nbsp;/TD>

/TR>

TR>

TD>dest expression:/TD>

TD STYLE="color:blue" ID=expression>nbsp;/TD>

TR>

TR>

TD>return type:/TD>

TD STYLE="color:darkred" ID=returnType>nbsp;/TD>

/TR>

TR>

TD>result:/TD>

TD STYLE="color:red" ID=matchResult>nbsp;/TD>

/TR>

TR>

TD>regex lastIndex:/TD>

TD STYLE="color:red" ID=lastIndex>nbsp;/TD>

/TR>

/TABLE>

/FORM>

/BODY>

/HTML>

標簽:德陽 內江 衡陽 黔東 邯鄲 婁底 樂山 海南

巨人網(wǎng)絡通訊聲明:本文標題《Javascript正則表達式測試網(wǎng)頁》,本文關鍵詞  Javascript,正則,表達式,測試,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Javascript正則表達式測試網(wǎng)頁》相關的同類信息!
  • 本頁收集關于Javascript正則表達式測試網(wǎng)頁的相關信息資訊供網(wǎng)民參考!
  • 推薦文章