Vsftp:/data01/mysqllog/binlog# cat a2.pl
$_="aaaa@[2]sasas";
if ($_ =~/.*?(\@\[[0-9]+\]).*/){print "\$id is $1\n"}; Vsftp:/data01/mysqllog/binlog# perl a2.pl
$id is @[2] Vsftp:/data01/mysqllog/binlog# cat a2.pl
$_="aaaa@[23]sasas";
if ($_ =~/.*?(\@\[[0-9]+\]).*/){print "\$id is $1\n"}; Vsftp:/data01/mysqllog/binlog# perl a2.pl
$id is @[23] d+ 匹配多个数字字符串,和 [0-9]+ 语法一样
+匹配前导模式一次或多次 [oracle@oadb test]$ cat a3.pl
$_="aaaa@[3]sasas";
if ($_ =~/.*?(\@\[[0-9]{1,3}\]).*/){print "\$id is $1\n"}; [oracle@oadb test]$ perl a3.pl
$id is @[3] [oracle@oadb test]$ cat a3.pl
$_="aaaa@[30]sasas";
if ($_ =~/.*?(\@\[[0-9]{1,3}\]).*/){print "\$id is $1\n"};
[oracle@oadb test]$ perl a3.pl
$id is @[30] [oracle@oadb test]$ cat a3.pl
$_="aaaa@[301]sasas";
if ($_ =~/.*?(\@\[[0-9]{1,3}\]).*/){print "\$id is $1\n"}; [oracle@oadb test]$ perl a3.pl
$id is @[301] [oracle@oadb test]$ cat a3.pl
$_="aaaa@[3012]sasas";
if ($_ =~/.*?(\@\[[0-9]{1,3}\]).*/){print "\$id is $1\n"};
[oracle@oadb test]$ perl a3.pl
[oracle@oadb test]$ [0-9]{1,3} 匹配1到3次 {m} 匹配刚好是 m 个 的指定字符串 {m,n} 匹配在 m个 以上 n个 以下 的指定字符串 {m,} 匹配 m个 以上 的指定字符串
												

perl + 匹配前导模式一次或者多次的更多相关文章

  1. Python(2.7.6) glob - 匹配指定模式的文件

    Python 标准库的 glob 模块支持查询匹配指定模式的文件或目录.这里的模式使用的并不是正则表达式,而是通过通配符来匹配的 Unix 风格的路径名扩展. 支持的通配符: 通配符 说明 *  匹配 ...

  2. 【转】fnmatch模块的使用——主要作用是文件名称的匹配,并且匹配的模式使用的unix shell风格

    [转]fnmatch模块的使用 fnmatch模块的使用 此模块的主要作用是文件名称的匹配,并且匹配的模式使用的unix shell风格.fnmatch比较简单就4个方法分别是:fnmatch,fnm ...

  3. 【原创】IBM Websphere 报错:JSPG0120E: 为 pageEncoding 属性和匹配 URI 模式的配置元素指定不同的值是非法的。

    websphere中间件,在打开一个jsp页面时报: IBM Websphere 报错:JSPG0120E: 为 pageEncoding 属性和匹配 URI 模式的配置元素指定不同的值是非法的. . ...

  4. perl 正则前导字符

    uat-prx02:/root# cat a1.pl my $str="123"; if ($str =~/(abc)*/){print "111111111\n&quo ...

  5. grep, egrep, fgrep - 打印匹配给定模式的行

    总览 SYNOPSIS grep [options] PATTERN [FILE...] grep [options] [-e PATTERN | -f FILE] [FILE...] 描述 DESC ...

  6. oc kvc的模式:匹配搜索模式(模式匹配)、装包解包

    按照一定规则使用匹配模式在目标空间进行搜索,然后执行相应操作: 运行时系统将kvc的运行机制解释为模式匹配,将值的兼容性问题解释为装包解包问题 一.模式匹配 The default implement ...

  7. 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab*ac*a"匹配,但是与"aa.a"和"ab*a"均不匹配

    // test20.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include<iostream> #include< ...

  8. Perl的调试模式熟悉和应用

    perl -d file.pl perl -c file.pl DB<1> hList/search source lines:               Control script ...

  9. perl匹配特殊写法

    my $name='4'; #找匹配4 for($name) { if(/^4$/) { print "success\n"; } else { print "faile ...

随机推荐

  1. zookeeper实现商品秒杀抢购

    package com.test; import java.io.IOException; import java.util.List; import java.util.concurrent.Cyc ...

  2. iOS开发——https+证书

    由于公司项目的需要,经过调研后,已成功. 同事已把此问题写成博客<[加密解密]HTTPS>,我就直接转用了 附带链接如下: http://www.jianshu.com/p/8351917 ...

  3. Java多线程-线程的锁总结

    一.多线程-同步函数的锁是this /*同步函数用的是哪一个锁呢?函数需要被对象调用.那么函数都有一个所属对象引用.就是this.所以同步函数使用的锁是this. 通过该程序进行验证. 使用两个线程来 ...

  4. C bit 操作

    C 位 操作 一.C bit 操作(C语言 二进制位 操作) 1.Setting a bit Use the bitwise OR operator (|) to set a bit. number ...

  5. NOIP200701

    题是这样的: 试题描述 某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金.期末,每个学生都有3门课的成绩:语文.数学.英语.先按总分从高到低排序,如果两个同学总分相同,再 ...

  6. JS拖拽原理

    实现拖拽效果主要跟鼠标的三个事件有关: onmousedown : 选择要拖拽的元素 onmousemove : 移动元素 onmouseup : 释放元素 三个事件的关系: obj.onmoused ...

  7. c#的多线程

    多线程的使用方法: Thread t = new Thread(new ThreadStart (StartMethod)); t.Start(); private void StartMethod( ...

  8. thinkphp验证码的实现

    两种验证码验证实现,一种直接在form表单提交按钮实现验证,一种使用ajax传递参数实现验证: 1.直接在form表单提交按钮实现验证,在控制器VerifyController.class.php中写 ...

  9. Maya QT interfaces in a class

    Most tutorials online have suggested the way to fire commands inside QT interfaces launched n Maya ( ...

  10. 9.MVC框架开发(关于ActionResult的处理)

    1.在Action处理之后,必须有一个返回值,这个返回值必须继承自ActionResult的对象 2.ActionResult,实际就是服务器端响应给客户端的结果 ViewResult(返回视图结果) ...