DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> MooTools教程(13):正則表達式
MooTools教程(13):正則表達式
編輯:關於JavaScript     

今天我們將先簡要地看一下正則表達式,然後再看一下MooTools提供的一些讓正則表達式更容易使用的功能。如果你還不熟悉怎麼使用正則表達式(regular expression(regex)),我強烈建議你花一定量的時間好好看一下這篇文章中的一些鏈接,尤其是文章結尾“更多學習”部分的鏈接。我們今天只是講一講正則表達式最基本的用法,正則表達式能做的遠遠超過我們今天所講的內容。

基本用法

test()方法

它的簡單在於,一個正則表達式可以是一個你想要匹配的簡單字符串。盡管JavaScript本身已經為RegExp對象提供了它自己的test()方法,MooTools的test()方法更好用一些,在JavaScript中使用正則表達式也更輕松一些。

對於初學者,我們先看一下test()方法最簡單的用法,在一個大的字符串中查找特定的字符串:

參考代碼: [復制代碼] [保存代碼]
  1. // 我們要在這個字符串中查找
  2. var string_to_test = "Match anything in here";
  3.  
  4. // 我們要查找的正則表達式
  5. var regular_expression = "anything";
  6.  
  7. // 應用正則表達式,返回true或者false
  8. var result = string_to_test.test(regular_expression);
  9.  
  10. // result現在為true

這和contains()函數的行為基本類似,不過contains是按照完整的單詞查找,而正則表達式匹配任何它出現的地方。舉個例子,在下面的這個實例中,contains()方法將不返回true,而test()方法將返回true:

參考代碼: [復制代碼] [保存代碼]
  1. var string_to_match = "anything";
  2.  
  3. // 返回false
  4. string_to_match.contains('nything')
  5.  
  6. // 返回true
  7. string_to_match.test('nything');

另外要注意的是,除非你明確指定,正則表達式是大小寫敏感的(區分大小寫),因此你在一個包含“Match”的字符串中查找“match”將返回false。你可以在下面的例子中試一試:

參考代碼: [復制代碼] [保存代碼]
  1. var regex_demo = function(){
  2.     var test_string = $('regex_1_value').get('value');
  3.     var regex_value = $('regex_1_match').get('value');
  4.     var test_result = test_string.test(regex_value);
  5.  
  6.     if(test_result){
  7.         $('regex_1_result').set('html', "matched");
  8.     }
  9.     else {
  10.         $('regex_1_result').set('html', "didn't match");
  11.     }
  12. }

注意,在正則表達式中有一些特殊字符,你需要小心使用。如果你把這些字符中的任何一個輸入到下面的正則表達式文本框中將會產生錯誤,這個時候你需要刷新這個頁面才能繼續下面的演示例子。

- . * + ? ^ $ { } ( ) | [ ] / \

要測試的字符串:
正則表達式

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved