正则表达式是AS3比较重要的一个部分,具体内容如下:

//正则表达式有四个部分。1元子符。2元序列。3标志。4数量表达符。


//下面是元字符部分
//现在我们来看看元字符: ^ $ \ . * + ? ( ) [ ] { } |


//^匹配字符串的开头
varpattern:RegExp=/^小虫/;
var str:String="小虫是好人";
trace(str," is valid:",pattern.test(str));

//$匹配字符串的结尾
varpattern1:RegExp=/lizhen$/;
var str1:String="My name is lizhen";
trace(str1,pattern1.test(str1));

//^ 和$同时使用则是精确匹配,也就是说字符串str2必须等于pattern2的内容。
varpattern2:RegExp=/^lizhen$/;
var str2:String="lizhen";
trace(str2,pattern2.test(str2));


//下面两个例子都说明了转义
varpattern3:RegExp = /1\/2/;
var str3:String="1/2是多少?";
trace(str3,pattern.test(str3));

var pattern4:RegExp=/\"lizhen"/;
var str4:String="My name is \"lizhen\"";
trace(str4,pattern4.test(str4));


/;
var str5:String = "我的";
trace(str5,pattern5.test(str5));


//+的用法:匹配至少一个前面的字符
//注意+和*的区别。如果varstr:String="我的"那就会显示false,【后半句显示TRUE。不明白,有看到的同学给个答复,多谢啦】
varpattern6:RegExp=/我的+/;
//var str6:String="我的ID是...";
var str6:String="我的我的我的";
trace(str6,pattern6.test(str6));


//?的用法:匹配0个或1个前面的字符
varpattern7:RegExp=/天?/;
var str7:String="一天快乐";
//var str:String="天天快乐";
trace(str7,pattern7.test(str7));

var pattern8:RegExp=/快乐./;
//var str8:String="一天快乐";
var str8:String="天天快乐";
trace(str8,pattern8.test(str8));


//.的用法:匹配任意单个字符

var pattern9:RegExp=/[a-z]/
var str9:String="A"
trace(str9,pattern9.test(str9));


//[ ]的用法:匹配某一个范围而不局限于具体的单个字符

var pattern10:RegExp=/([a-z][A-Z][0-9])+///比如说这个就是定义了一个四个字符的字符串第一个字符是a到z之间的字符第二个是A到Z之间的字符第三个是0-9之间的字符,第四个重复前面的数字。
var str10:String="aD77aaaaaaaaaaaaaaaa"
trace(str10,pattern10.test(str10));


//( )的用法:这个就相当于是个集合。

var pattern11:RegExp=/小虫|lizhen/
var str11:String="lizhen是好人"
trace(str11,pattern11.test(str11));
//|的用法:匹配左边或者右边的字符。

//下面的内容是元序列
//元序列是在正则表达式模式中具有特殊含义的字符序列{n} {n,}{n,m} \b \B \d \D \f \n \r \s \S \t \unnnn \v \w \w \W\xnn

var pattern12:RegExp=/(小虫){2}/
//对象中连续出现2次小虫.注意下(),如果用var pattern:RegExp=/小虫{2}/ 那么就是varstr:String="小虫虫"
var str12:String="小虫小虫小虫"
trace(str12,pattern12.test(str12))
//{n}的用法:匹配恰好n个(n为非负整数)前面的字符

//{n,}的用法:匹配恰好n个(n为非负整数)或更多个前面的字符。

//{n,m}的用法:匹配至少n个,至多m个前面的字符。


//\b的用法:匹配单词字符和非单词字符之间的位置只能放在开头和结尾。NN的,他不支持中文.用中文还是用^.

var pattern13:RegExp=/\b小虫/
var pattern14:RegExp=/.mp3\b/
var str13:String="小虫.mp3";//可以判断是否是mp3格式。
trace(str13,pattern14.test(str13));

//\B的用法:匹配对象必须位于目标字符串的开头和结尾两个边界之内,即匹配对象既不能作为目标字符串的开头,也不能作为目标字符串的结尾和\b相反。
var pattern15:RegExp=/\B是/
var str15:String="我是虫子"
trace(str15,pattern15.test(str15));

//\d的用法:用于匹配从0到9的数字
varpattern16:RegExp=/\b\d/ //开头的第一字符必须为数字
var str16:String="900/元"
trace(str16,pattern16.test(str16));

//\D的用法:匹配除数字以外的任何字符

var pattern17:RegExp=/\b\D/ //开头的第一字符必须不为数字
var str17:String="a900/元"
trace(str17,pattern17.test(str17));

//\f的用法:匹配换页符DOS操作时代的概念


//\n的用法:匹配换行符
varpattern18:RegExp=/\n/
var str18:String="欢迎来到虫子\n的空间!"
trace(str18,pattern18.test(str18));

//\r的用法:匹配回车符
varpattern19:RegExp=/\r/;
var str19:String = "欢迎来到\r虫子空间";
trace(str19,pattern19.test(str19));

//\s的用法:匹配任何空白字符(空格、制表符、换行符或回车符)
varpattern20:RegExp = /\s/;
var str20:String = "欢迎来到虫子的 空间!";
trace(str20,pattern20.test(str20));

//\S的用法:匹配除空白字符以外的任何字符
varpattern21:RegExp = /\S/;
var str21:String = "欢饮来到虫子空间!";
trace(str21,pattern21.test(str21));

//\t的用法:匹配制表符DOS操作时代的概念


//\unnnn用法:匹配字符代码由十六进制数字 nnnn 指定的 Unicode字符。例如,\u263a 是一个笑脸字符
varpattern22:RegExp=/\u263a/
var str22:String="欢迎来到虫子的空间!\u263a"
trace(str22,pattern22.test(str22));

//\v 用法:匹配垂直换页符DOS操作时代的概念

//\w用法:匹配单词字符(A-Z、a-z、0-9 或_)。请注意,\w不匹配非英文字符,如é、? 或 ?。他和[]是有区别的。
varpattern23:RegExp=/^\w/
var str23:String="a虫子"
var str23a:String="0虫子"
var str23b:String="A虫子"
var str23c:String="_虫子"
trace(str23,pattern23.test(str23));

//\W用法:匹配除单词字符以外的任何字符。
varpattern24:RegExp = /^\W/;
var str24:String = "虫子";
trace(str24,pattern24.test(str24));

//\xnn用法:匹配具有指定 ASCII 值(由十六进制数字 nn定义)的字符。
var pattern25:RegExp=/^\x41/;"A"
var str25:String="ABCD";
trace(str25,pattern25.test(str25));


//标志:标志可以作为正则表达式对象属性进行访问。正则表达式有五个标志:gi m s x

//g的用法:如果不指定g,那么在查找的时候只会返回一个。
varpattern26:RegExp= /sh\w*/;
var str26:String = "she sells seashells by the seashore.";
trace(str26.match(pattern26));
//指定g后
var str27:String = "she sells seashells by the seashore.";
var pattern27:RegExp = /sh\w*/g;
trace(str27.match(pattern27))


//i的用法:默认情况下,正则表达式匹配区分大小写。如果设置 i (ignoreCase)标志,将忽略区分大小写。
var str28:String = "She sells seaShells bythe seaShore.";
var pattern28:RegExp = /sh\w*/gi;
trace(str28.match(pattern28))

//m的用法:匹配"行"的开头和结尾.注意这里的行只有 \n字符表示行的结束,其余的都不行。包括\r.
var str29:String = "She sellsseaShells by the seaShore.\n";
str29+="She's your mother"
//trace(str29);
var pattern29:RegExp = /^sh\w*/gim
trace(str29.match(pattern29));


//s的用法:用点来匹配换行符
var str30:String= "<p>Test\n";
str30 += "Multiline</p>";
//trace(str30)
var re:RegExp =/<p>.*?<\/p>/s;
trace(str30.match(re));

//x的用法:在正则表达式中使用 x (extended)标志时,则会忽略在模式中键入的所有空格。 var str31:String ="lizhenfenxifenxi"; var re31:RegExp = /li zhen fen xi fen xi/x trace(str31.match(re31));

as3 正则表达式比较齐全的更多相关文章

  1. HTML5数字输入仅接受整数的实现代码

    这篇文章主要介绍了HTML5数字输入仅接受整数的实现代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  2. HTML5 WebSocket实现点对点聊天的示例代码

    这篇文章主要介绍了HTML5 WebSocket实现点对点聊天的示例代码的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  3. ios – 在Swift的UIView中找到UILabel

    我正在尝试在我的UIViewControllers的超级视图中找到我的UILabels.这是我的代码:这是在Objective-C中推荐的方式,但是在Swift中我只得到UIViews和CALayer.我肯定在提供给这个方法的视图中有UILabel.我错过了什么?我的UIViewController中的调用:解决方法使用函数式编程概念可以更轻松地实现这一目标.

  4. ios – 在Swift中将输入字段字符串转换为Int

    所以我非常擅长制作APP广告Swift,我试图在文本字段中做一些非常简单的输入,取值,然后将它们用作Int进行某些计算.但是’vardistance’有些东西不正确它是导致错误的最后一行代码.它说致命错误:无法解开Optional.None解决方法在你的例子中,距离是一个Int?否则称为可选的Int..toInt()返回Int?因为从String到Int的转换可能失败.请参阅以下示例:

  5. 如何在iOS中检测文本(字符串)语言?

    例如,给定以下字符串:我想检测每个声明的字符串中使用的语言.让我们假设已实现函数的签名是:如果没有检测到语言,则返回可选字符串.因此,适当的结果将是:有一个简单的方法来实现它吗?

  6. xamarin – 崩溃在AccountStore.Create().保存(e.Account,“);

    在Xamarin.Forms示例TodoAwsAuth中https://developer.xamarin.com/guides/xamarin-forms/web-services/authentication/oauth/成功登录后,在aOnAuthenticationCompleted事件中,应用程序在尝试保存到Xamarin.Auth时崩溃错误说不能对钥匙串说期待着寻求帮助.解决方法看看你

  7. ios – 将视频分享到Facebook

    我正在编写一个简单的测试应用程序,用于将视频从iOS上传到Facebook.由于FacebookSDK的所有文档都在Objective-C中,因此我发现很难在线找到有关如何使用Swift执行此操作的示例/教程.到目前为止我有这个在我的UI上放置一个共享按钮,但它看起来已禁用,从我读到的这是因为没有内容设置,但我看不出这是怎么可能的.我的getVideoURL()函数返回一个NSURL,它肯定包含视

  8. xcode – 错误“线程1:断点2.1”

    我正在研究RESTAPI管理器.这是一个错误,我无法解决它.我得到的错误在下面突出显示.当我打电话给这个班级获取资源时:我评论的线打印:Thread1:breakpoint2.1我需要修复错误的建议.任何建议都非常感谢解决方法您可能在不注意的情况下意外设置了断点.单击并拖动代表断路器外部断点的蓝色刻度线以将其擦除.

  9. ios – 更改导航栏标题swift中的字符间距

    类型的值有人可以帮我这个或建议一种不同的方式来改变swift中导航栏标题中的字符间距吗?解决方法您无法直接设置属性字符串.你可以通过替换titleView来做一个技巧

  10. ios – 如何从变量访问属性或方法?

    是否可以使用变量作为Swift中方法或属性的名称来访问方法或属性?在PHP中,您可以使用$object->{$variable}.例如编辑:这是我正在使用的实际代码:解决方法你可以做到,但不能使用“纯粹的”Swift.Swift的重点是防止这种危险的动态属性访问.你必须使用Cocoa的Key-ValueCoding功能:非常方便,它完全穿过你要穿过的字符串到属性名称的桥,但要注意:这里是龙.

随机推荐

  1. 法国电话号码的正则表达式

    我正在尝试实施一个正则表达式,允许我检查一个号码是否是一个有效的法国电话号码.一定是这样的:要么:这是我实施的但是错了……

  2. 正则表达式 – perl分裂奇怪的行为

    PSperl是5.18.0问题是量词*允许零空间,你必须使用,这意味着1或更多.请注意,F和O之间的空间正好为零.

  3. 正则表达式 – 正则表达式大于和小于

    我想匹配以下任何一个字符:或=或=.这个似乎不起作用:[/]试试这个:它匹配可选地后跟=,或者只是=自身.

  4. 如何使用正则表达式用空格替换字符之间的短划线

    我想用正则表达式替换出现在带空格的字母之间的短划线.例如,用abcd替换ab-cd以下匹配字符–字符序列,但也替换字符[即ab-cd导致d,而不是abcd,因为我希望]我如何适应以上只能取代–部分?

  5. 正则表达式 – /bb | [^ b] {2} /它是如何工作的?

    有人可以解释一下吗?我在t-shirt上看到了这个:它似乎在说:“成为或不成为”怎么样?我好像没找到’e’?

  6. 正则表达式 – 在Scala中验证电子邮件一行

    在我的代码中添加简单的电子邮件验证,我创建了以下函数:这将传递像bob@testmymail.com这样的电子邮件和bobtestmymail.com之类的失败邮件,但是带有空格字符的邮件会漏掉,就像bob@testmymail也会返回true.我可能在这里很傻……当我测试你的正则表达式并且它正在捕捉简单的电子邮件时,我检查了你的代码并看到你正在使用findFirstIn.我相信这是你的问题.findFirstIn将跳转所有空格,直到它匹配字符串中任何位置的某个序列.我相信在你的情况下,最好使用unapp

  7. 正则表达式对小字符串的暴力

    在测试小字符串时,使用正则表达式会带来性能上的好处,还是会强制它们更快?不会通过检查给定字符串的字符是否在指定范围内比使用正则表达式更快来强制它们吗?

  8. 正则表达式 – 为什么`stoutest`不是有效的正则表达式?

    isthedelimiter,thenthematch-only-onceruleof?PATTERN?

  9. 正则表达式 – 替换..与.在R

    我怎样才能替换..我尝试过类似的东西:但它并不像我希望的那样有效.尝试添加fixed=T.

  10. 正则表达式 – 如何在字符串中的特定位置添加字符?

    我正在使用记事本,并希望使用正则表达式替换在字符串中的特定位置插入一个字符.例如,在每行的第6位插入一个逗号是什么意思?如果要在第六个字符后添加字符,请使用搜索和更换从技术上讲,这将用MatchGroup1替换每行的前6个字符,后跟逗号.

返回
顶部