as3 正则表达式(比较齐全)

2024-09-06 12:32

本文主要是介绍as3 正则表达式(比较齐全),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

正则表达式是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, " is valid:", pattern1.test(str1));

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


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

var pattern4:RegExp=/\"lizhen"/;
var str4:String="My name is \"lizhen\"";
trace(str4, " is valid:", 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, " is valid:", pattern6.test(str6));


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

 

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


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

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


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

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


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

var pattern11:RegExp=/小虫|lizhen/
var str11:String="lizhen是好人"
trace(str11, " is valid:", 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, " is valid:", 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," is valid:", pattern14.test(str13));

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

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

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

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

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


//\n的用法:匹配换行符
varpattern18:RegExp=/\n/
var str18:String="欢迎来到虫子\n的空间!"
trace(str18," is valid:", 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," is valid:", 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," is valid:", 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," is valid:", 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 正则表达式(比较齐全)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1142009

相关文章

百度/小米/滴滴/京东,中台架构比较

小米中台建设实践 01 小米的三大中台建设:业务+数据+技术 业务中台--从业务说起 在中台建设中,需要规范化的服务接口、一致整合化的数据、容器化的技术组件以及弹性的基础设施。并结合业务情况,判定是否真的需要中台。 小米参考了业界优秀的案例包括移动中台、数据中台、业务中台、技术中台等,再结合其业务发展历程及业务现状,整理了中台架构的核心方法论,一是企业如何共享服务,二是如何为业务提供便利。

关键字synchronized、volatile的比较

关键字volatile是线程同步的轻量级实现,所以volatile性能肯定比synchronized要好,并且volatile只能修饰于变量,而synchronized可以修饰方法,以及代码块。随着JDK新版本的发布,synchronized关键字的执行效率上得到很大提升,在开发中使用synchronized关键字的比率还是比较大的。多线程访问volatile不会发生阻塞,而synchronize

JavaScript正则表达式六大利器:`test`、`exec`、`match`、`matchAll`、`search`与`replace`详解及对比

在JavaScript中,正则表达式(Regular Expression)是一种用于文本搜索、替换、匹配和验证的强大工具。本文将深入解析与正则表达式相关的几个主要执行方法:test、exec、match、matchAll、search和replace,并对它们进行对比,帮助开发者更好地理解这些方法的使用场景和差异。 正则表达式基础 在深入解析方法之前,先简要回顾一下正则表达式的基础知识。正则

匹配电子邮件地址的正则表达式

这个正则表达式 QRegularExpression regex(R"((\w+)(\.|_)?(\w+)@(\w+)(\.(\w+))+))"); 用于匹配电子邮件地址的格式。下面是对这个正则表达式的逐步解析和解释: 1. QRegularExpression 构造函数 QRegularExpression regex(R"((\w+)(\.|_)?(\w*)@(\w+)(\.(\w+))+

stl的sort和手写快排的运行效率哪个比较高?

STL的sort必然要比你自己写的快排要快,因为你自己手写一个这么复杂的sort,那就太闲了。STL的sort是尽量让复杂度维持在O(N log N)的,因此就有了各种的Hybrid sort algorithm。 题主你提到的先quicksort到一定深度之后就转为heapsort,这种是introsort。 每种STL实现使用的算法各有不同,GNU Standard C++ Lib

研究生生涯中一些比较重要的网址

Mali GPU相关: 1.http://malideveloper.arm.com/resources/sdks/opengl-es-sdk-for-linux/ 2.http://malideveloper.arm.com/resources/tools/arm-development-studio-5/ 3.https://www.khronos.org/opengles/sdk/do

性能测试工具 wrk,ab,locust,Jmeter 压测结果比较

前言 在开发服务端软件时,经常需要进行性能测试,一般我采用手写性能测试代码的方式进行测试,那有什么现成的好的性能测试工具吗? 性能测试工具 wrk,ab,locust,Jmeter 压测结果比较 详见: 性能测试工具 wrk,ab,locust,Jmeter 压测结果比较 Jmeter性能测试 入门

notepad++ 正则表达式多条件查找替换

基础语法参考: https://www.cnblogs.com/winstonet/p/10635043.html https://www.linuxidc.com/Linux/2019-05/158701.htm   通常情况下我们查找的内容和要被替换掉的内容是一样的,我们只需要使用正则表达式精确框定查找内容,替换直接输入要替换的内容即可。 但有时会比较复杂,查找的内容,只需要替换其中

MongoDB学习—(6)MongoDB的find查询比较符

首先,先通过以下函数向BookList集合中插入10000条数据 function insertN(obj,n){var i=0;while(i<n){obj.insert({id:i,name:"bookNumber"+i,publishTime:i+2000})i++;}}var BookList=db.getCollection("BookList")调用函数,这样,BookList

js正则表达式test方法的问题

今天在网上碰到一个帖子,写了一个关于Regex的奇怪现象,(文章来源http://www.php100.com/html/webkaifa/javascript/2007/0109/1866.html) 代码如下 <script type="text/javascript"><!--var re = /^\d+(?:\.\d)?$/ig; alert(re.test('112.3'