正則式是一項非常好的文本處理方式,它可以很方便的檢查文本格式,搜索文本中的內容,以及替換文本的內容,比如通常去除文本的前端空格和後端空格的功能,使用下面的正則式即可完成:/**去除字符串前面的空格和跳格符*/*/v.
正則式是一項非常好的文本處理方式, 它可以很方便的檢查文本格式, 搜索文本中的內容, 以及替換文本的內容, 比如通常去除文本的前端空格和後端空格的功能, 使用下面的正則式即可完成:
- /*
* 去除字符串前面的空格和跳格符
*/*/ - var src:String=" Hello! ";
- trace("\""+src+"\""); //原文本
- trace("\""+src.replace(/^\s*/g,"")+"\""); //去掉前面的空格
- trace("\""+src.replace(/\s*$/g,"")+"\""); //去掉後面的空格
由於個人習慣的原因, 我對AS3的正則式進行了一些封裝, 封裝之後, 由Regex, RegexOptions, Match和MatchCollection四個類組成, 以下的代碼中都用到了這幾個類比如檢查用戶輸入的一個文本是否是一個合法的郵箱地址, 可以使用下面的正則式進行檢查:
- /*
* 檢查文本是否是一個郵箱地址
*/ - var regex:Regex=new Regex("^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$");
- var email1:String="[email protected]";
- var email2:String="thor.net@gmail_com";
- trace("\""+email1+"\""+(regex.isMatch(email1)?"是":"不是")+"郵箱地址");
- trace("\""+email2+"\""+(regex.isMatch(email2)?"是":"不是")+"郵箱地址");
正則式還可以用於提取一段文本中特定的內容, 例如以下代碼:
- /*
* 提取文本中的內容
*/ - var srcText:String="name:thor,birthday:1979-10-31";
- regex=new Regex("name:(?P<name>(\\w+))",RegexOptions.IGNORECASE); //忽略大小寫
- var match:Match=regex.getMatch(srcText);
- var text:String=match.result("hello, ${name} ^_^");
- trace(text);