11RIA 闪客社区 - 最赞 Animate Flash 论坛

搜索
查看: 2163|回复: 3
上一主题 下一主题

[RegExp 正则] 正则表达式(小练习)

[复制链接] TA的其它主题
发表于 2019-1-4 16:11:53 | 显示全部楼层 |阅读模式

【游客模式】——注册会员,加入11RIA 闪客社区吧!一起见证Flash的再次辉煌……

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
[Actionscript3] 纯文本查看 复制代码
//常用的正则表达式集:
var doc:String="  我(8.352)是一个www   中国人,\n       \n中国人.是勇敢的,\r   中国人是勤劳的!\r外国人国人也是勇敢的,\r也是勤劳的!";
var regExp:RegExp=/[\u4e00-\u9fa5]国人/g;//\u4e00-\u9f5a中文字符;
regExp=/[^\x00-\xff]/g;//双字节字符;
regExp=/[\uFF00-\uFFFF]/g;//全角字符;
regExp=/\n\s*\n/g;//空行;
regExp=/^\s*|\s*$/gm;//行首或行尾的空格;
regExp=/\d+/g;//数字;
regExp=/\./g;//匹配.;

trace(doc.search(regExp));//输出第一个匹配成功的首字符的索引;
trace(doc.match(regExp));//输出全文中所有匹配成功的数组;
trace(doc.replace(regExp,"这里是替换的内容"));//把匹配成功的内空替换成“智慧的中国人”;
/*-------------------------*/
//用()来分组:
var str:String="123123123,123456456456,123456123,123123456,";
var re:RegExp=/(123(123|456))\2+/g;//用\2来匹配第二个分组(多层圆括号的分组索引是由外到里的顺序;);
trace(str+"\n"+str.replace(re,"$1"+"替换内容"));
/*---------------------------*/
//前瞻(?<=)后顾(?=)
var ss:String="美丽的中国,伟大的中国,可爱的中国。伟大的中国!";
var reg:RegExp=/(?<=伟大的)中国(?=,可)/g;//前面是“伟大的”后面是“,可”;
trace(ss.replace(reg,"替换"));
/*-------------------------*/
//贪心与懒惰:
var aa:String="可爱的中国爱的中国爱的中国";
var rege:RegExp=/可[爱的中国]*/;//贪心符*或+;
rege=/可[爱的中国]*?/;懒惰符?;
trace(aa.replace(rege,"换"));

 楼主| 发表于 2019-1-4 16:18:32 | 显示全部楼层
本帖最后由 雪原xy 于 2019-1-4 16:21 编辑

正则表达式很有意思,但逻辑性很强,
就像是一个个迷题,解开它是我们的乐趣!!!
翻阅了好多资料才弄明白上面的内容,
本来想背诵别人的代码,
后来发现那样做太傻了,
掌握规则才是聪明的做法!
现在想想,
正则表达式好像是word中的查找和替换!!
回复

使用道具 举报

发表于 2019-1-4 20:58:35 | 显示全部楼层
雪原xy 发表于 2019-1-4 16:18
正则表达式很有意思,但逻辑性很强,
就像是一个个迷题,解开它是我们的乐趣!!!
翻阅了好多资料才弄明白 ...

正则表达不难,记住规则,之后收集一些常用的正则表达式。。

用的到时候再去查找都可以。。

我反正从来不记正则表达式。。
回复

使用道具 举报

 楼主| 发表于 2019-1-5 09:45:08 | 显示全部楼层
TKCB 发表于 2019-1-4 20:58
正则表达不难,记住规则,之后收集一些常用的正则表达式。。

用的到时候再去查找都可以。。

用的时候再去百度!我也是这么想的!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

感谢所有支持论坛的朋友:下面展示最新的5位赞助和充值的朋友……更多赞助和充值朋友的信息,请查看:永远的感谢名单

SGlW(66139)、 anghuo(841)、 whdsyes(255)、 longxia(60904)、 囫囵吞澡(58054)

下面展示总排行榜的前3名(T1-T3)和今年排行榜的前3名的朋友(C1-C3)……更多信息,请查看:总排行榜今年排行榜

T1. fhqu1462(969)、 T2. lwlpluto(14232)、 T3. 1367926921(962)  |  C1. anghuo(147)、 C2. fdisker(27945)、 C3. 囫囵吞澡(58054)



快速回复 返回顶部 返回列表