正規表示式實際應用

2021-07-30 10:33:09 字數 1710 閱讀 4313

一 普通字元匹配

下面是一些在網頁程式設計中經常會遇到的字元匹配模式。

l 匹配中文字元的正規表示式:

[u4e00-u9fa5]

2 匹配雙位元組字元(包括漢字在內):

[^x00-xff]

3 匹配空行的正規表示式:

n[s|]*r

4 匹配html標記的正規表示式:

/<(.*)>.*|<(.*) />/

5 匹配首尾空格的正規表示式:

(^s*)|(s*$)

6 計算字串的長度(乙個雙位元組字元長度計2,ascii字元計1):

string.prototype.len=function()

7 匹配**url的正規表示式:

8 匹配e-mail位址的正規表示式:

w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*

二 限制表單所輸入的內容

在網頁程式設計中,經常會用到限制網頁表單中的文字框輸入內容的情況,下面是一些利用正規表示式來實現這種功能的例子。

1 用正規表示式限制只能輸入中文:

οnkeyup="value=value.replace(/[^u4e00-u9fa5]/g,'')"

onbeforepaste="clipboarddata.setdata('text',clipboarddata.getdata('text').replace(/[^u4e00-u9fa5]/g,''))"

2 用正規表示式限制只能輸入數字:

οnkeyup="value=value.replace(/[^d]/g,'') 

"onbeforepaste="clipboarddata.setdata('text',clipboarddata.getdata('text').replace(/[^d]/g,''))"

3 用正規表示式限制只能輸入數字和英文:

οnkeyup="value=value.replace(/[w]/g,'')

"onbeforepaste="clipboarddata.setdata('text',clipboarddata.getdata('text').replace(/[^d]/g,''))"

4 用正規表示式限制只能輸入全形字符:

οnkeyup="value=value.replace(/[^uff00-uffff]/g,'')" 

onbeforepaste="clipboarddata.setdata('text',clipboarddata.getdata('text').replace(/[^uff00-uffff]/g,''))"

三 去掉重複的字元

利用正規表示式可以去掉字串中重複的字元。

例如,下面的例子利用正規表示式去掉字串中重複的字元,然後引用取出包括重複的字元,再以重複的字元建立第二個表示式,取到不重複的字元,兩者串連。**如下:

var s="abacabefgeeii"

var s1=s.replace(/(.).*1/g,"$1")

var re=new regexp("["+s1+"]","g")

var s2=s.replace(re,"")

alert(s1+s2); 

執行結果:abcefgi。

正規表示式應用

d 非負整數 正整數 0 0 9 1 9 0 9 正整數 d 0 非正整數 負整數 0 0 9 1 9 0 9 負整數 d 整數 d 非負浮點數 正浮點數 0 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 正浮點數 d 非正浮點數 負浮點數 0 0 9 0 ...

正規表示式(應用)

在此頁面寫正規表示式,可以提供參考,和進行校驗 應用於前端 匹配任意長度的大小寫字母與數字 a za z0 9 匹配任意長度且不為空的大小寫字母與數字 a za z0 9 匹配長度小於20且不為空的大小寫字母與數字 a za z0 9 匹配長度小於20且不為空的大小寫字母與數字與漢字 a za z0...

正規表示式 應用

生成正規表示式 https http ftp rtsp mms s 分析 如果沒有在 裡面的時候,代表以什麼開頭 如果在 裡面的時候,代表除了 之外 https http ftp rtsp mms 代表乙個分組 進行分組的時候,findall方法只返回分組裡面的內容 print re.findall...