新手指南Javascript 正則表達式使用變量-js教程-網頁制作

香港交友討論區HkEasyChat

 找回密碼
 新會員註冊
..
喜歡本頁?立即SHARE


香港交友討論區HkEasyChat»論壇forum Hkeasychat電腦網絡 Blog/網頁設計程式區 Javascript 正則表達式使用變量-js教程-網頁制作
您正在討論區的: Javascript 正則表達式使用變量-js教程-網頁制作
查看: 52|回復: 0
收起左側

[JavaScript語法] Javascript 正則表達式使用變量-js教程-網頁制作

[複製鏈接]

簽到天數: 2 天

連續簽到: 1 天

[LV.1]初來乍到

評論頭像

文章來給大家介紹在Javascript 正則表達式使用變量時一些問題與解決方法,主要講到的替換與RegExp兩種方式

例1,replace帶有變量

replace函數可以使用正則表達式來匹配字符串實現替換。
今天遇到的問題是正則表達式出現了變量,以今天的實際情況為例︰
代碼如下復制代碼
/(^'+arr2+'|)|(|'+arr2+'$)/
arr2為數組元素,是變量
str=str.replace(/(^'+arr2+'|)|(|'+arr2+'$)/,'');
使用這種方式無法替換成央A解決辦法︰
代碼如下復制代碼
var reg=eval_r('/(^'+arr2+'|)|(|'+arr2+'$)/');
str=str.replace(reg,'');
如果是直接變量我們單獨替換可以如下操作
代碼如下復制代碼
var match_str = 'bitch';
var regex = "/," + match_str + ",/ig";
var target_str = ",abcde,bitch,fghij,";
var val = target_str.replace(eval(regex),",");
alert(val);
val應該是︰,abcde,fghij,
例2,RegExp模式帶有變量
代碼如下復制代碼
function checkBeginWithChar(str,minlen,maxlen,msg)
{
Minlen = minlen-1;
Maxlen = maxlen-1;
var re=new RegExp("^[a-zA-Z]{1}([a-zA-Z0-9]){"+minlen+","+maxlen+"}$");
if (!re.exec(str)) {
alert(msg);
return false; }
return true;
}

上面是一個JavaScript函數,可以這樣調用︰
代碼如下復制代碼

If(!checkBeginWithChar(「a123df」,6,12,」你輸入的PIN碼必須以字母開頭並且字符數在6—12之間!」))
return false;

這是使用變量的情況,下面這個函數是沒有使用變量的情況。
代碼如下復制代碼
function checkBeginWithChar(str,msg)
{
var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]){5,50}$/;
if (!patrn.exec(str)) {
alert(msg);
return false;
}
return true;
}

注意︰沒有變量的時候,正則表達式可以不寫成字符串的形式兩邊分別要有反斜杠;如果使用變量就要用new RegExp()並且里面的字符串沒有那兩個反斜杠。
[/td] [/tr]        [/table]





系統自動相關推薦tag:forum,交友,alexa



上一篇︰js實現倒計時效果(年月日時分秒)-js教程-網頁制作
下一篇︰ajax 跨域提交數據實例詳解-js教程-網頁制作
+10
如您覺得" Javascript 正則表達式使用變量-js教程-網頁制作 "很膠,請share出去
您正在回覆: Javascript 正則表達式使用變量-js教程-網頁制作
您需要登錄後才可以回帖 登錄 | 新會員註冊

本版積分規則

回post預設係匿名,如唔想匿名回post請會員自己勾走

閱讀版|閱讀版大量|純文字網頁|香港交友討論區

Copyright © 香港交友討論區HKEASYCHAT Co. All Rights Reserved
香港廣告銷售No.1

手機版|論壇聯絡
HK ADVERTISEMENT 2015 GOLDEN REWARDS

GMT+8, 27-5-2018 03:39 AM

快速回復 返回頂部 返回列表
保持討論區活躍高登錄一齊討論啦~ hkeasychat