当前位置: 代码迷 >> Web前端 >> RegExp -正则表达式
  详细解决方案

RegExp -正则表达式

热度:716   发布时间:2012-10-08 19:54:56.0
RegExp --正则表达式
RegExp 类允许使用正则表达式(即可用于在字符串中执行搜索和替换文本的模式)。

可以使用 new RegExp() 构造函数或将 RegExp 文本分配给一个变量,从而创建新的 RegExp 对象:

 var pattern1:RegExp = new RegExp("test-\\d", "i");
var pattern2:RegExp = /test-\d/i;
公共属性
? 属性 定义方
? ? constructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
? ? dotall : Boolean
[] 指定正则表达式模式中的点字符 (.) 是否与换行符相匹配。
RegExp
? ? extended : Boolean
[] 指定是否为正则表达式使用扩展模式。
RegExp
? ? global : Boolean
[] 指定是否为正则表达式使用全局匹配。
RegExp
? ? ignoreCase : Boolean
[] 指定正则表达式是否忽略大小写。
RegExp
? ? lastIndex : Number
指定字符串中开始进行下一次搜索的索引位置。
RegExp
? ? multiline : Boolean
[] 指定是否设置了 m(多行)标志。
RegExp
? ? prototype : Object
[] 对类或函数对象的原型对象的引用。
Object
? ? source : String
[] 指定正则表达式的模式部分。
RegExp
公共方法
? 方法 定义方
? ?
RegExp(re:String, flags:String)
允许使用两个字符串来构造正则表达式。
RegExp
? ?
exec(str:String):Object
在给定的字符串 str 中执行正则表达式搜索。
RegExp
? ?
hasOwnProperty(name:String):Boolean
指示对象是否已经定义了指定的属性。
Object
? ?
isPrototypeOf(theClass:Object):Boolean
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
? ?
propertyIsEnumerable(name:String):Boolean
指示指定的属性是否存在、是否可枚举。
Object
? ?
setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void
设置循环操作动态属性的可用性。
Object
? ?
test(str:String):Boolean
在给定的字符串 str 中测试正则表达式是否匹配。
RegExp

<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->/**
*?
*?@author?Default
*?@version?0.1
*/

package??
{
????import?flash.display.Sprite;
????
????
public?class?regexes?extends?Sprite
????{
????????
public?function?regexes()
????????{
????????????urlExp();
????????}
????????
????????
private?function?metacharacters():void
????????{
????????????
//?初始化正则表达式类
????????????var?pattern:RegExp?=?/hel{1,2}o/;
????????????
????????????
//?需要验证的字符串
????????????var?helloWorld:String?=?"hello?world";
????????????
????????????
//?输出结果
????????????trace("验证‘helloWorld’?的结果:"?+?pattern.test(helloWorld));
????????}
????????
????????
private?function?dotallProperty():void
????????{
????????????var?str:String?
=?"Hello\n?World";???
????????????
????????????var?pattern:RegExp?
=?/Hello.World/;
????????????trace(pattern.dotall);
????????????
????????????pattern?
=?/Hello.World/s;
????????????trace(pattern.dotall);
????????}
????????
????????
private?function?extendedProperty():void
????????{
????????????var?str:String?
=?"Hello?World";
????????????
????????????var?pattern:RegExp?
=?/Hello?World/;
????????????trace(pattern.extended);
????????????
????????????pattern?
=?/Hello?World/x;
????????????trace(pattern.extended);
????????}
????????
????????
private?function?base():void
????????{
????????????
//?初始化正则表达式类
????????????var?pattern:RegExp?=?/world/;
????????????
????????????
//?需要验证的字符串
????????????var?helloWorld:String?=?"hello?world!";
????????????var?hello:String?
=?"hello";
????????????
????????????
//?输出结果
????????????trace("验证?‘helloWorld’?字符串的结果:"?+?pattern.test(helloWorld));
????????????trace(
"验证?‘hello’?字符串的结果:"?+?pattern.test(hello));
????????}
????????
????????
private?function?gbd():void
????????{
????????????
//?初始化正则表达式类
????????????var?pattern:RegExp?=?/[\u4e00-\u9fa5]/;
????????????
????????????
//?需要验证的字符串
????????????var?nihao:String?=?"你好";
????????????var?hello:String?
=?"hello";
????????????
????????????
//?输出结果
????????????trace("验证?‘你好’?字符串的结果:"?+?pattern.test(nihao));
????????????trace(
"验证?‘hello’?字符串的结果:"?+?pattern.test(hello));
????????}
????????
????????
private?function?emailExp():void
????????{
????????????
//?初始化正则表达式类
????????????var?pattern:RegExp?=?/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;
????????????
????????????
//?需要验证的字符串
????????????var?email:String?=?"lalo@gmail.com";
????????????var?errEmail1:String?
=?"lalo@gmail";
????????????var?errEmail2:String?
=?"lalo.gmail.com";
????????????
????????????
//?输出结果
????????????trace("验证正确的邮件格式的结果:"?+?pattern.test(email));
????????????trace(
"验证错误1的邮件格式的结果:"?+?pattern.test(errEmail1));
????????????trace(
"验证错误2的邮件格式的结果:"?+?pattern.test(errEmail2));
????????}
????????
????????
private?function?urlExp():void
????????{
????????????
//?初始化正则表达式类
????????????var?pattern:RegExp?=?/[a-zA-z]+:\/\/[^\s]*/;
????????????
????????????
//?需要验证的字符串
????????????var?url:String?=?"http://www.adobe.com";
????????????var?errUrl:String?
=?"adobe.com";
????????????
????????????
//?输出结果
????????????trace("验证正确的网址格式的结果:"?+?pattern.test(url));
????????????trace(
"验证错误的网址格式的结果:"?+?pattern.test(errUrl));
????????}
????????
????????
private?function?telExp():void
????????{
????????????
//?初始化正则表达式类
????????????var?pattern:RegExp?=?/\d{3}-\d{8}|\d{4}-\d{7}/;
????????????
????????????
//?需要验证的字符串
????????????var?tel1:String?=?"0755-09874567";
????????????var?tel2:String?
=?"010-98765745";
????????????var?errTel:String?
=?"0228974444";
????????????
????????????
//?输出结果
????????????trace("验证正确的电话号码1的结果:"?+?pattern.test(tel1));
????????????trace(
"验证正确的电话号码2的结果:"?+?pattern.test(tel2));
????????????trace(
"验证错误的电话号码的结果:"?+?pattern.test(errTel));
????????}
????????
????????
private?function?qqExp():void
????????{
????????????
//?初始化正则表达式类
????????????var?pattern:RegExp?=?/[1-9][0-9]{4,}/;
????????????
????????????
//?需要验证的字符串
????????????var?qq:String?=?"89056743";
????????????var?errQQ:String?
=?"1234";
????????????
????????????
//?输出结果
????????????trace("验证正确的QQ号码的结果:"?+?pattern.test(qq));
????????????trace(
"验证错误的QQ号码的结果:"?+?pattern.test(errQQ));
????????}
????????
????????
private?function?codeExp():void
????????{
????????????
//?初始化正则表达式类
????????????var?pattern:RegExp?=?/[1-9]\d{5}(?!\d)/;
????????????
????????????
//?需要验证的字符串
????????????var?code:String?=?"518000";
????????????var?errCode:String?
=?"1234";
????????????
????????????
//?输出结果
????????????trace("验证正确的邮政编码的结果:"?+?pattern.test(code));
????????????trace(
"验证错误的邮政编码的结果:"?+?pattern.test(errCode));
????????}
????????
????????
private?function?idCardExp():void
????????{
????????????
//?初始化正则表达式类
????????????var?pattern:RegExp?=?/\d{15}|\d{18}/;
????????????
????????????
//?需要验证的字符串
????????????var?idCard:String?=?"220724198601010912";
????????????var?errIdCard:String?
=?"1234";
????????????
????????????
//?输出结果
????????????trace("验证正确的身份证的结果:"?+?pattern.test(idCard));
????????????trace(
"验证错误的身份证的结果:"?+?pattern.test(errIdCard));
????????}
????}
????
}