13.07.2015 Views

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

Perl 语言编程 - Linux教程

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

$last = $1 if /(^neur.*)/;}print $first, "\n";print $last, "\n";# 打 印 "neurad"# 打 印 "neurypnology"在 调 用 reset 操 作 符 时 ,reset 只 重 置 那 些 编 译 进 同 一 个 包 的 ?? 记 录 。 你 说 m?? 的 时候 等 效 于 说 ??。5.2.3 s/// 操 作 符 ( 替 换 )LVALUE =~ s/PATTERN/REPLACEMENT/egimosxs/PATTERN/REPLACEMENT/egimosx这 个 操 作 符 在 字 串 里 搜 索 PATTERN, 如 果 找 到 , 则 用 REPLACEMENT 文 本 替 换 匹 配 的子 字 符 串 。( 修 饰 词 在 本 节 稍 后 描 述 。)$lotr = $hobbit;Shire :)# 只 是 拷 贝 Hobbit 译 注 : 影 片 魔 戒 里 ,Hobbit 人 住 在$lotr =~ s/Bilbo/Frodo/g;成 了 魔 戒 的 看 护 人 , 又 是 魔 戒# 然 后 用 最 简 单 的 方 法 写 结 局 , 译 注 :Frodo 代 替 Bilbo一 个 s/// 操 作 符 的 返 回 值 ( 在 标 量 和 列 表 环 境 里 都 差 不 多 ) 是 它 成 功 的 次 数 ( 如 果 与 /g 修饰 词 一 起 使 用 , 返 回 值 可 能 大 于 一 )。 如 果 失 败 , 因 为 它 替 换 了 零 次 , 所 以 它 返 回 假 (""),它 等 效 于 数 字 0。if( $lotr =~ s/Bilbo/Frodo/) { print "Successfully wrote sequel." }$change_count = $lotr =~ s/Bilbo/Frodo/g;替 换 部 分 被 当 作 双 引 号 包 围 的 字 串 看 待 。 你 可 以 在 替 换 字 串 里 使 用 我 们 前 面 描 述 过 的 任 何 动态 范 围 的 模 式 变 量 ($`,$&,$',$1,$2, 等 等 ), 以 及 任 何 其 他 你 准 备 使 用 的 双 引 号包 围 的 小 发 明 。 比 如 下 面 是 一 个 小 例 子 , 用 于 找 出 所 有 字 串 "revision","version", 或 者"release", 并 且 用 对 应 的 大 写 字 串 替 换 , 我 们 可 以 用 \u 逃 逸 处 理 替 换 的 目 标 部 分 :s/revision|version|release/\u$&/g; # | 用 于 表 示 模 式 中 的 “ 或 ”158

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!