← eetop.cn_Perl语言入门(第四版小骆驼书)

推荐答案 测试一下

1使用 m//匹配 ................................ ................................ ................................ ..........…

问答题 中等 经典问答问答题

参考答案

题目中“使用 m// 匹配”通常指 Perl 语言中的模式匹配操作符 `m//`,用于对字符串执行正则表达式匹配。题面出现大量连续的点号“.”和数字“98”,暗示考察正则中的元字符“.”(匹配除换行符外的任意单个字符)以及重复量词。连续的点号序列(如 56 个点)在正则中表示“任意字符出现 56 次”,但实际匹配时`.`默认只匹配一个字符,需借助量词如 `{56}` 或 `+`、`*` 才能匹配多个。数字“98”可能是被匹配的字符串内容,也可能是匹配结果的下标。常见考点包括: - `m//` 的语法:`m/模式/修饰符`,可省略 `m` 直接用 `/模式/`。 - 点号`.` 需要转义成 `\.` 才能匹配字面点,否则匹配任意字符。 - 贪婪匹配:默认量词 `+`、`*`、`{n,}` 会尽可能多地匹配,可能影响结果。 - 匹配成功返回真值(1),失败返回空;在列表上下文中返回捕获内容。 - 题目若要求匹配连续点号,可写 `m/\.{56}/` 或 `m/\.+/`,但需注意转义。 易错点:误以为点号代表任意字符可匹配换行符(需 `/s` 修饰符);忘记转义导致匹配错误;混淆捕获与非捕获括号;忽略 `=~` 绑定操作符。

涉及知识点

  • Perl m//模式匹配操作符
  • 正则元字符点号的用法与转义
  • 贪婪匹配与量词
  • 匹配修饰符(如 /s)
  • 匹配返回值与上下文
← 上一题
登录后反馈错题
下一题 →