Chinaunix首页 | 论坛 | 博客
  • 博客访问: 350557
  • 博文数量: 122
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 1191
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-24 11:12
文章分类

全部博文(122)

文章存档

2010年(122)

我的朋友

分类:

2010-07-20 11:15:58

第九章 用正则表达式处理文本

正则表达式也可以修改文本。之前我们只是告诉你如何进行模式匹配,但现在要用模式来定位部分字符串,并进行修改。

s///替换

s///操作符将指定变量合乎模式的那部分替换为另一个串:

$_=”He’s out bowling with Barney tonight.”;

s/Barney/Fred/;

print “$_\n”;

/g进行全局替换

该修饰符可让s///进行所有可能的、不重复的替换。

不同定界符

对于一般没有左右之分的字符,用法便跟使用斜线一样,只要重复三次即可。

如果使用有左右之分的成对字符,就必须使用两对:一对圈引模式,一对圈引替换字符串。

可选修饰符

       替换运算也可以使用我们常在模式匹配中使用的/i/x/s修饰符。

       s#wilma#Wilma#gi;

绑定操作符

=~s///选择不同的目标。

大小写转换

\U转义字符会将其后的所有字符转换成大写。

\L转义字符会将其后的字符转换成小写。

\E结束大小写转换的影响。

\l转为大写只影响其后第一个字符。

\u转为小写只影响其后第一个字符。

split操作符

它会根据分隔符拆开一个字符串。这对处理被制表符、冒号、空白或任意符号分隔的数据相当有用。Split会保留开头处的空字段,并省略结尾处的空字段。Split默认会以空白字符分割$_

Join函数

Join的功能与split恰好相反:split会将字符串分解为数个片段,而join则会把这些片段联合成一个字符串

列表上下文的m//

在列表上下文中使用模式匹配操作符(m//)时,如果模式匹配成功,那么返回的是所有捕获变量的列表;如果匹配失败,则会返回空列表。

/g修饰符也可以用在m//操作符上。

阅读(1017) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~