<Perl语言入门>第15章习题第2题如下: 用 given-when 结构写一个程序,根据输入的数字,如果它能被3整除,就打印“Fizz”:如果它能被5整除,就打印“Bin”:如果它能被7整除,就打印“Sausage”.比如,如果输入15,程序就应该打印“Fizz”和“Bin”,因为15可以同时被3和5整除.思考一下,可以让程序输出“Fizz Bin Sausage”的最小数字该是多少? 自己写的程序如下: #!/usr/bin/perl use 5.010; my $num; while(…
1.使用正则表达式替换文本  s///  s/<pattern>;/<replacement>;/ 如果匹配失败, 则什么也不会发生, 变量也不受影响. 返回布尔值, 替换成功时为真, 否则为假. $roger = "This is a text"; $roger =~ s/This (\w+)/This was/; print $roger; $_ = "green scaly dinosaur"; s/(\w+) (\w+)/$, $/;…
1.以 m// 进行匹配 如:  m/roger/ ,  /roger/ 是它的简写;  在说明  qw// 时可以选择使用任何成对的定界符, 对应m//匹配也可以, 如写成:  m(roger)  m<roger>  m{roger}   m%roger% 或 m[roger] , 也可以使用非成对定界符. 如果使用 // 作为定界符, 那么前面的m就可以省略, 基本的原则是选择模式中不会出现的符号作为定界符 , 如在写 http:// 的匹配模式时,就可以选用 m{}  作为定界符; 写作…
1.Perl中的正则表达式 在Perl中叫做模式, 是一个匹配(或不匹配)某字符串的模板, 是一种小程序, 对于一个字符串, 要么匹配, 要么不匹配. 使用简易模式: 将模式写在一对正斜线(/)中即可. 2.元字符  .  匹配非换行符 \n 的任何单字符, 需要注意的是转义字符如  \t  算做一个字符. 匹配  .  应该使用  \.  *  匹配前面的内容0次或多次, 使用  .* 表示匹配任意单字符任意次(这种模式也称为捡破烂模式)  +  匹配前面的内容至少1次  ?  匹配前面的内容…
数字格式化方法toFixed().toExponential().toPrecision(),三个方法都四舍五入 toFixed() 方法指定小数位个数  toExponential() 方法 用科学计数法表示数,参数指定小数位个数  toPrecision() 方法自动判断调用toFixed()或toExponential()方法,参数指定所有数的位数 复制代码代码如下: var num = 99;  alert(toFixed(2)); //99.00  alert(toExponentia…
vue学习笔记之:为何data是一个方法 在vue开发中,我们可以发现,data中的属性值是在function中return出来的.可为何data必须是一个函数呢?我们先看官方的解释: 当一个组件被定义, data 必须声明为返回一个初始数据对象的函数,因为组件可能被用来创建多个实例.如果 data 仍然是一个纯粹的对象,则所有的实例将共享引用同一个数据对象!通过提供 data 函数,每次创建一个新实例后,我们能够调用 data 函数,从而返回初始数据的一个全新副本数据对象 而我对这句话的理解是…
mybatis学习笔记(14)-查询缓存之中的一个级缓存 标签: mybatis mybatis学习笔记14-查询缓存之中的一个级缓存 查询缓存 一级缓存 一级缓存工作原理 一级缓存測试 一级缓存应用 本文主要讲mybatis的一级缓存.一级缓存是SqlSession级别的缓存. 查询缓存 mybatis提供查询缓存.用于减轻数据压力,提高数据库性能. mybaits提供一级缓存,和二级缓存. 一级缓存是SqlSession级别的缓存.在操作数据库时须要构造sqlSession对象,在对象中有一…
作者:Grey 原文地址:ZooKeeper学习笔记三:使用ZooKeeper实现一个简单的配置中心 前置知识 完成ZooKeeper集群搭建以及熟悉ZooKeeperAPI基本使用 需求 很多程序往往是通过心跳检测来判断配置的变更,通过zk的回调机制,我们可以实现比心跳更为快速的配置检测机制,包括配置的新增,修改和删除 流程也比较简单: 环境准备 一个zk集权,ip和端口分别为: 192.168.205.145:2181 192.168.205.146:2181 192.168.205.147…
作者:Grey 原文地址: ZooKeeper学习笔记四:使用ZooKeeper实现一个简单的分布式锁 前置知识 完成ZooKeeper集群搭建以及熟悉ZooKeeperAPI基本使用 需求 当多个进程不在同一个系统中,用分布式锁控制多个进程对资源的访问. 在单机情况下,可以使用JUC包里面的工具来进行互斥控制. 但是在分布式系统后,由于分布式系统多线程.多进程并且分布在不同机器上,这将使原单机并发控制锁策略失效,为了解决这个问题就需要一种跨JVM的互斥机制来控制共享资源的访问,这就是分布式锁的…
使用m//匹配 //这是m//(模式匹配)的一种简写.同qw//操作一样,可以使用任何成对的分隔符.因此,可以使用m(fred), m<fred>, m{fred}, m[fred],或者m,fred,, m!fred!, m^fred^,其它非成对的分隔符也可以 不区分大小写:/i if(/yes/i) {#大小写无关 print “In that case, I recommend that you go bowling.\n”;} 匹配任何字符:/s 默认情况下,点(.)不匹配换行符,这…