生活智库网
白蓝主题五 · 清爽阅读
首页  > 亲子教育

孩子学编程,从理解Perl正则或操作符开始

最近陪儿子参加了一个少儿ref="/tag/132/" style="color:#874873;font-weight:bold;">编程兴趣班,老师讲到文本处理时提到了Perl里的正则表达式。说实话,一开始我也听得一头雾水,什么‘匹配邮箱’‘提取电话号码’,听着像是魔法咒语。直到他拿作业本上的一道题问我:‘爸爸,为什么这个规则能找出发邮件的人,也能找出打电话的?’我才意识到,是时候搞明白那个叫‘或操作符’的东西了。

什么是Perl正则中的“或”?

在Perl的正则表达式里,想让一条规则匹配多种情况,就用竖线 | 来连接,这就是“或操作符”。比如孩子要从一段文字里找出‘cat’或者‘dog’,写法就是:

cat|dog</code></pre>

<p>只要文本中有任何一个词,就能被揪出来。就像他挑玩具,要么要小猫公仔,要么要小狗模型,两个都行。</p>

<h3>实际用起来更灵活</h3>
<p>有次他写了个小脚本,想从聊天记录里抓出所有带联系方式的行。有人留了微信,有人写了邮箱。他一开始写了两条规则分别查,后来老师教他合并成一条:</p>

<pre><code>\b[\w.-]+@[\w.-]+\b|\bwechat:\w+\b</code></pre>

<p>这条规则的意思是:先匹配一个邮箱格式,或者(|)匹配以 wechat: 开头的微信号。一行代码搞定两件事,他当时眼睛都亮了。</p>

<h3>别小看这根竖线</h3>
<p>这根竖线看似简单,但在孩子学编程的过程中,其实是第一次接触到“逻辑分支”的概念。不是非黑即白,而是“这个也行,那个也可以”。生活中不也是这样吗?去公园可以坐公交,也可以骑车,两种方式都能到——跟正则里的“或”多像。</p>

<p>现在他写点小工具,总会主动想想能不能用“|”来简化规则。有时候还会得意地说:“我这个正则会自己选路走。”听着挺可爱,但也让我觉得,学编程不只是敲代码,更是学会怎么思考。</p>                

本站“生活智库网”专注分享电脑、软件、网络与生活常识等实用知识,仅供学习交流使用。

访问地址:http://kbll123.com,欢迎收藏本站获取更多实用教程。

如有侵权或错误内容,请联系站长及时处理。