常见正则表达式汇总【一】

1. 
匹配行的起始和结束:

Ip as-path access-list 20 permit 850

该过滤器匹配任何包含字符串 850 的 as-path 。匹配的 as-path 例如:( 850 ),( 23 , 5 ,
850 , 155 )和( 1123 , 850 , 367 )等等。无论所匹配的串是属性中唯一的串或者属性中多个 AS
号中的一个甚至是属性中一个很大的 AS 号中的一部分,该匹配都成功。

Ip as-path access-list 20 permit ^850$

该过滤器表示:开始紧接着一个字符串 850 ,然后紧接行的结束,只匹配 AS850.

Ip as-path access-list 20 permit ^$

正则表达式匹配行的开始紧接行的结束;如果行的开始与行的结束间存在任何字符则匹配不成功。

2 .匹配字符集合:

   Ip as-path
access-list 20 permit ^85[0123459]$

   
该过滤器匹配包含单一 AS 号, 850 , 851 , 852 , 853 , 854 , 855 , 859 的
as-path.

   Ip as-path
access-list 20 permit ^85[0-5]$

   
该过滤器匹配包含单一 AS 号, 850 , 851 , 852 , 853 , 854 , 855.

3. 否定:匹配除字符集和外的其他任何字符

当在括弧中使用加字符时,将否定方括弧中制定的范围。结果是正则表达式将匹配范围外的任何内容。

Ip as-path access-lisr 20 permit ^85[^0-5]$

该过滤器除了多一个加字符以外与上一个过滤器类似,指定了“不是 0~5 ”。该正则表达式将匹配除( 850 , 851 , 852
, 853 , 854 , 855 )范围以外的 AS 号。

 

4 .通配符:匹配任何单一字符。

   
点(。)匹配任何单一字符。单一字符可能是一个空的。

   Ip as-path
access-list 20 permit ^85.

   
该过滤器匹配一个由 AS 号 850-859 开始的 as-path 。由于“。”可以匹配一个空格, AS 号 85
也能匹配成功。

 

5.  
替代:匹配字符串集合中的一个

   
( | )用作表示一个“或”操作。即( | )任何一边的字都可以匹配。

Ip as-path access-list 20 permit ^(851|852)$

该过滤器匹配单个的 AS 号: 851 或 852 的 as-path. 你可以扩展“或”功能来作多于 2
个可能性的选择。

Ip as-path access-list permit ^(851|853|855|858|869)

该过滤器匹配单个的 AS 号: 851,853,855,858 或 869 的 as-path.

 

6 .选择字符:匹配一个可能存在也可能不存在的字符。

问号(?)匹配字的 0 个或一个实例。

Ip as-path access-list 20 permit ^(850)?$

该过滤器匹配一个单一 AS 号 850 的 as-path
或者匹配一个空的列表。注意这里的园括弧,表示元字符特殊字符“?”应用在整个 AS 号上。如果表达式使用 850
?,元字符特殊字符只应用在最后一个字符上。该表达式匹配 85 或者 850.

7 .重复:匹配许多字符的重复

  星号( * )匹配 0 次或多次重复,加号( + )匹配 1
次或多重复。

Ip as-path access-list 20 permit ^(850)*$

该过滤器 as-path 匹配空的 AS 列表或包含 1 个或多个的 AS 号 850 的列表。即 AS 路径可以是( 850
),( 850 , 850 ),( 850 , 850 , 850 )等。

Ip as-path access-list 20 permit ^(850)+$

该过滤器的功能与上面的类似,只是要求列表中至少包含 1 个 AS 号 850.

8 .分界线:描述多个字 .

   
分界线( _ )用作描述分隔分别指定的一串字。

   Ip as-path
access-list 20 permit ^560_148_284_13$

   
该过滤器表示匹配指定的 as-path ( 560 , 148 , 284 , 13 )。

   Ip as-path
access-list 20 permit -560_148_284_13_

   
该过滤器只要求指定的序列包含在 as-path 中,并不要求是唯一的属性。可以匹配 as-path ( 12 , 560 , 148
, 284 , 13 , 18 )或 as-path ( 560 , 148 , 284 , 13 , 29 )等等。

 

9 .放到一起:一个复杂的例子。

  
将多个元字符特殊字符混合是用来匹配一些复杂的字符串才能显示正则表达式的真正威力,考虑下面的过滤器。

  Ip as-path access-list 20 permit ^ (
550 )
+_[880|2304]?_1805_.*  

 
  该过滤器表明:在一个或多个 550 之后,可能存在 880
或者 2304. 接下来必须有一个 1805. 最后的部分指定 1805 以后, as-path 可能存在任何 AS
号序列,也可能什么也没有。

时间: 2024-08-03 10:12:13

常见正则表达式汇总【一】的相关文章

前端常用正则表达式汇总

前言 正则这东西吧,感觉是开发的都会接触到一些.. 那些所谓的基础语法就不说了哈,一搜一大把,来点实际的. 我这里就分享下我工作中汇总和遇到的,希望对一些小伙伴有些许帮助哈!! 正则汇总 匹配URL const regexURL = /((https?|ftp)?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/gi; // 这条正则可以匹配这么一坨格式的url //ww

10个实用的PHP正则表达式汇总_php技巧

本文实例讲述了10个实用的PHP正则表达式汇总,分享给大家供大家参考.具体如下: 正则表达式是程序开发中一个重要的元素,它提供用来描述或匹配文本的字符串,如特定的字符.词或算式等.但在某些情况下,用正则表达式去验证一个字符串比较复杂和费时.本文为你介绍10种常见的实用PHP正则表达式的写法,希望对你的工作有所帮助. 1. 验证E-mail地址 这是一个用于验证电子邮件的正则表达式.但它并不是高效.完美的解决方案.在此不推荐使用. 复制代码 代码如下: $email = "test@ansonch

mac新手必看:mac系统常见疑问汇总

  相信很多Mac新手和我一样以前都是Windows用户,对于Windows一旦出现较复杂的问题基本都不太懂.听说Mac相对简单很多,所以选择加入这个Mac阵营.如果你是Mac新手,当你接触Mac的时候不能再带有Windows一些复杂繁琐的操作理念,这样你会更快入门哦!(大神们经验之谈)今天,安下为新手带来的绝大多数"mac系统常见疑问汇总"主要是针对新手用户的一些疑问.一起看看你心中是否也有同样的"疑问"吧! 疑问一:office是否兼容Mac? 对于办公软件大部

Java发送邮件遇到的常见需求汇总_java

基于SMTP发送一个简单的邮件 首先,需要一个认证器: package No001_基于SMTP的文本邮件; import javax.mail.Authenticator; import javax.mail.PasswordAuthentication; public class SimpleAuthenticator extends Authenticator { private String username; private String password; public Simple

javascript常用正则表达式汇总_javascript技巧

javascript常用正则表达式汇总 /** * 检验各种规则 * @param str 检验的内容 * @param cType 预设的检验规则 字符串[ * empty, 检验是否为空 * telphone, 座机手机号码 * allphone, 所有手机号码 * ydphone, 移动手机号码 * ltphone, 联通手机号码 * dxphone, 电信手机号码 * email, 邮箱 * url, 网址 * cn, 汉字 * image, 图片格式 * emscode, 邮政编码 *

cakephp常见知识点汇总

本文实例总结了cakephp常见知识点.分享给大家供大家参考,具体如下: 1. 调用其他控制器的模板,重定向 方法一: 在此调用/views/tasks/tasks下的hello.ctp模板 $this -> viewPath = 'tasks'; $this -> render('hello'); 方法二(带参): $this->redirect(array('controller'=>'users','action'=>'welcome',urlencode($this-

jQuery调用ajax请求的常见方法汇总

 这篇文章主要介绍了jQuery调用ajax请求的常见方法,实例汇总了三种常见的jQuery调用Ajax的技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例汇总了jQuery调用ajax请求的常见方法.分享给大家供大家参考.具体如下: 示例代码1 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 $.ajax('/ROUTE', { type: 'GET' data: {param1: 'Hello', param2: 'Worl

jQuery调用ajax请求的常见方法汇总_jquery

本文实例汇总了jQuery调用ajax请求的常见方法.分享给大家供大家参考.具体如下: 示例代码1 $.ajax('/ROUTE', { type: 'GET' data: {param1: 'Hello', param2: 'World'}, dataType: 'json', contentType: 'application/json', timeout: 3000, success: function(response) { // console.log(response.somethi

javascript常见操作汇总_javascript技巧

本文整理汇总了javascript常见的各类操作,包括字符串.时间.表单.正则验证等等.有着极高的参考价值.分享给大家供大家参考之用.具体方法如下: /***** BasePage.js 公共的 脚本文件 部分方法需引用jquery库 *****/ //#region 日期操作 //字符串转化为时间. function stringtoTime(date1) { var dt = new Date(Date.parse(date1.replace(/-/g, "/"))); retur