比较常用的几个正则表达式匹配数字

 更新时间:2017年7月6日 23:23  点击:2373
本文介绍了比较常用的几个正则表达式匹配数字,非常实用,有需要的同学可以参考一下

正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。

匹配中文字符的正则表达式: [\u4e00-\u9fa5]

评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

匹配双字节字符(包括汉字在内):[^\x00-\xff]

评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

匹配空白行的正则表达式:\n\s*\r

评注:可以用来删除空白行

匹配HTML标记的正则表达式:<(\s*?)[^>]*>.*?|<.*?>

评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力

匹配首尾空白字符的正则表达式:^\s*|\s*$

评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式

匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

评注:表单验证时很实用

匹配网址URL的正则表达式:[a-zA-z]+://[^\s]*

评注:网上流传的版本功能很有限,上面这个基本可以满足需求

匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$

评注:表单验证时很实用

匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}

评注:匹配形式如 0511-4405222 或 021-87888822

匹配腾讯QQ号:[1-9][0-9]{4,}

评注:腾讯QQ号从10000开始

匹配中国邮政编码:[1-9]\d{5}(?!\d)

评注:中国邮政编码为6位数字

匹配身份证:\d{15}|\d{18}

评注:中国的身份证为15位或18位

匹配ip地址:\d+\.\d+\.\d+\.\d+

评注:提取ip地址时有用

匹配特定数字:

^[1-9]\d*$    //匹配正整数
^-[1-9]\d*$   //匹配负整数
^-?[1-9]\d*$   //匹配整数
^[1-9]\d*|0$  //匹配非负整数(正整数 + 0)
^-[1-9]\d*|0$   //匹配非正整数(负整数 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //匹配正浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配负浮点数
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //匹配非负浮点数(正浮点数 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配非正浮点数(负浮点数 + 0)

评注:处理大量数据时有用,具体应用时注意修正

匹配特定字符串:

^[A-Za-z]+$  //匹配由26个英文字母组成的字符串
^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串
^[a-z]+$  //匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串
^\w+$  //匹配由数字、26个英文字母或者下划线组成的字符串

小编给大家推荐的这篇文章介绍了简单谈谈OpenStack中的网络隔离的教程,非常有用,不会的同学可以看看

前言

最近,关于xx公有云的用户网络,由于隔离问题引发安全讨论,大家顿时对啥“经典网络”、“VPC”等概念兴趣大增,大家的热议中多次提到AWS的VPC,亚马逊的AWS怎么搞的,我们不得而知,但是我们可以聊聊OpenStack的,毕竟它一直在模仿AWS嘛;

“隔离”啥

首先,我们先搞清楚,所谓“隔离”,到底是在“隔”什么;

我们知道,计算机网络,是分层实现的,不同协议工作在不同层,这些层的设计、制定都有国际标准,按着OSI的分层模型,共有七个层,大家在讨论的隔离,通常指的是第2层,也叫“数据链路层”;

数据链路层的网络包,也叫“帧”,我们常说的网卡的MAC地址,就是帧的地址,MAC,其实是“媒体访问控制”(media access control)的简称,这是数据链路层的一个子层;

那为什么要在这个二层上搞隔离呢?

因为二层的帧,其中一些帧的地址是广播地址,在同一个二层的设备都可以、也必须接收这些帧,交换机一般认为工作在二层,对这些广播包,也都要转发,所以二层通常被称为一个“广播域”,这就好比大家在一个教室里,都能互相看到,除非分隔到不同的教室;

OpenStack的玩法

openstack的neutron负责为虚拟机提供网络,而且openstack是假设多租户的,那多租户之间的隔离问题,它当然要提供支持,下面我们就看一下neutron是怎么实现的;

平坦网络

neutron中创建的网络是有“type”的,其中最基础的一种type就是“flat”,顾名思义,“平坦”就是指都在一个空间下,也就是没有做二层上的隔离,虚拟机都在同一个二层,同一个广播域;

从网上找了个示意图:

这种”平坦“的大二层网络,虽然实现、管理相对简单,但也会有诸多问题,除了安全方面,还有广播风暴等问题;

单个大二层网络,就好比整个学校的人都在一个大礼堂,大家都能看到,而且万一谁得了传染病,大家都被传染,要想隔离,可以把人分散到各个教室;

VLAN隔离网络

neutron中创建”vlan“这种类型的网络,就是主要使用的二层隔离方案,VLAN(虚拟局域网)本身就是交换机广泛使用的二层隔离技术;

示意图大概这样:

这就好比把整个学校的人,从大礼堂,分隔到了不同的教室,同一个教室的人互相可见,不同教室的人不可见;

但这种方案也有一定的局限性,首先管理相对麻烦,需要配合设置物理交换机,另外VLAN的可用数量有限制,VLAN的ID号仅有四千多个,我们假设每个租户分配1个VLAN,那最多也就能支持四千多个租户;

OverLay网络

overlay(覆盖)网络,所谓”覆盖“,大体上指”在一层上面覆盖另一层,也可以说是用一层载着另一层移动“,VXLAN是最常见的协议,它是把虚拟机的二层的帧,在宿主机上用UDP包裹起来,然后以宿主机的IP,必要的话,经过3层的路由,到达目的宿主机,然后再解封,把内包裹的二层帧,输送给目的虚拟机;

有点抽象?我们先看看VXLAN的包结构,就知道”包裹“是啥意思了:

那个”Inner Frame“就是被包裹的虚拟机的二层的包;

最终封装完的包,外层的源IP、目的IP地址,都是宿主机的,所以只要宿主机之间互通(3层可达),被封装的内层帧就可以被运输:

那这种方案有什么优点呢?

主要的:

vxlan的范围足够大,一千六百多万,租户随便用  因为是完全隔离的,租户可以随意定义自己的网络,哪怕和其他租户的IP段重叠都没有关系,比如上图中,租户A的网络,与租户B的网络  如果通过一定技术实现支持3层路由器,租户可以将自己的网络,随意组织自己的网络拓扑,比如上图中,租户A的两个网络,连接到一个路由器(可以是虚拟的)上

关于上面提的第三点,在neutron中大概是这样的:

VPC

最后,那到底啥是VPC呢?

很明确的告诉你,上面这个图就是VPC!

VPC(virtual private cloud),不是个技术专有名词,而是亚马逊AWS创造的一个产品层面的名词;

租户网络彻底隔离、IP段都能重叠、路由器、网络拓扑都能由自己定义,这还不是”虚拟私有云“吗!

本篇文章为大家分享了网站建设的步骤和流程,很值得看一看的,有需要的朋友就来参考一下吧。

想要建设好一个网站,有很多小细节需要注意,只有把这些小细节做好了,你才建设出来一个完美的网站。那么这个网站建设的流程或者步骤是怎么样的呢?

第一、域名空间

想要建设一个网站首先就是要要有一个空间和一个域名,否则你的网站没有空间放置,并且如果没有域名。那么你的网站就没有任何的意义。

1、域名的选择要谨慎,因为这很有可能会影响到你的网站是否会受到欢迎。尽量选择国际上通用的域名,比如.com之类,这样比较容易被别人记住。另外一点,就是网站的域名要与这个网站的内容有关,最好是这个网站名称的缩写,如果是一个英文单词是最好的,因为这样容易被别人记住,但是如果不能凑成一个英文单词,就用拼音的缩写代替,总之一切要以简单容易记并且可以突出网站主题为主。

2、虚拟空间也是需要的,因为你的网站建设好之后需要一个放置的空间,这个空间是虚拟的。

第二、规划设计

前期准备好之后就需要规划网站了,首先你要清楚自己想要建设一个什么样的网站,并且建设这个网站的目的是什么,只有这样才能着手去准备。另外把建设这个网站需要用到的一些素材要提前准备好,比如一些图片素材。

第三、网站建设

规划好之后就要正式的建设了,网站要分为前台和后台这两个部分。前台就是接待客户的地方,所以在建设这个时候要注意页面的整洁性,并且最好是简明扼要,也就是说让来访的客户第一眼就知道这个网站是做什么的,并且页面要有一定的趣味性,这样才可以吸引客户的兴趣。在建设后台的时候要编写程序,在编写的时候要注意客户的需求,一切从客户的角度出发。

基本上做完以上几点一个网站的雏形就形成了,并且这个网站可以推入市场,只需要后期宣传推广即可。但是在建设的过程中始终不能忘的一点就是从客户的角度出发。

一个好的网站除了建设之外,对网站的维护和优化也是至关重要的。那么如何才能很好的去维护好自己的网站呢?下面这篇文章我们就来为大家介绍了自己建设网站时如何进行 结构优化的,一起来看一看吧。

建设网站是一个技术活,但是在网站建设好之后,并不是说以后就不需要管了,网站的维护和优化也是非常重要的,而且并不是说你懂代码就可以随意的建设网站,很多人因为对网站建设一知半解,所建设出来的网站会被搜索引擎认定为是垃圾网站。

建设网站要如何进行结构的优化呢?我们要知道内容为王的道理。网站的优化又划分为很多不同的方面,有网站结构的优化,内链的优化,导航的优化,以及代码的优化等等。

第一、页面结构的普通化

页面结构的普通化简单来讲就是说页面要满足大多数用户的访问需求。我们在建设网站的时候,要从不同的角度考虑用户在访问页面的时候的需求和目标,这此基础上,我们在考虑网站是否美观,给用户留下的印象如何,是否会让用户产生再次访问的欲望,特别是针对一些团购网站更是要重视网站内页的优化。

第二、页面导航的优化

每个网站都需要设置一个导航,这是为了让用户能够方便快速的找到自己想要访问的页面和内容,如果你把网站的页面设置的很复杂,即便是很绚丽夺目,别人找不到自己想要找的内容,那么你所建设的网站就是失败的网站,因为用户感觉并不好,下次也不会在浏览这个页面了。因为现在网络发展十分迅速,没有人会十分耐心的在一个页面上浏览寻找,你的网站找不到,他会立即关闭页面进入别人的网站找自己想要的内容。所以对于导航的设置,也不能层次太深,这样用户就会迷路,这同样会流失很多的客户。

第三、内链结构的优化

内链的作用是为了让整个网站的内容能够连贯起来,其实做内链很简单,不要把所有的链接都指向首页,或者是某一个页面。应该是在不同的页面加不同的内链,这样可以引导用户进入到相关的网页中,了解更多的内容。而且合理性的优化内链,对于提高网站的权重有很大的作用。

关于对网站结构建设的优化,我们就先简单的说以上三点,网站优化是在推广网站的过程中性价比很好的,但是优化网站需要一个过程,不可能马上就有立竿见影的效果。

[!--infotagslink--]

相关文章

  • PHP正则表达式取双引号内的内容

    取双引号内的内容我们如果一个字符串中只有一个可以使用explode来获得,但如果有多个需要使用正则表达式来提取了,具体的例子如下。 写程序的时候总结一点经验,如何只...2016-11-25
  • PHP正则表达式之捕获组与非捕获组

    今天遇到一个正则匹配的问题,忽然翻到有捕获组的概念,手册上也是一略而过,百度时无意翻到C#和Java中有对正则捕获组的特殊用法,搜索关键词有PHP时竟然没有相关内容,自己试了一下,发现在PHP中也是可行的,于是总结一下,分享的同...2015-11-08
  • php 验证只能输入汉字、英语、数字的正则表达式

    正则表达式是一门非常有用的并且进行模糊判断的一个功能了,我们下面来看通过正则来验证输入汉字、英语、数字,具体如下。 收藏了正则表达式。可以验证只能输入数...2016-11-25
  • java正则表达式判断前端参数修改表中另一个字段的值

    这篇文章主要介绍了java正则表达式判断前端参数修改表中另一个字段的值,需要的朋友可以参考下...2021-05-07
  • 常用的日期时间正则表达式

    常用的日期时间正则表达式 下面收藏了大量的日期时间正则匹配函数,包括分钟,时间与秒都能达到。 正则表达式 (?n:^(?=d)((?<day>31(?!(.0?[2469]|11))|30(?!.0?2)|29(...2016-11-25
  • PHP正则表达式匹配验证提取网址URL实例总结

    网址规则是可寻的,所以我们可以使用正则表达式来提取字符串中的url地址了,下面一起来看看小编整理的几个PHP正则表达式匹配验证提取网址URL实例. 匹配网址 URL 的...2016-11-25
  • C# 10个常用特性汇总

    这篇文章主要介绍了C# 10个常用特性,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下...2020-07-09
  • 正则表达式中两个反斜杠的匹配规则详解

    这篇文章主要介绍了正则表达式中两个反斜杠的匹配规则,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-05-07
  • JS中使用正则表达式g模式和非g模式的区别

    这篇文章给大家详细介绍了JS中使用正则表达式g模式和非g模式的区别,非常不错,具有参考借鉴价值,需要的朋友参考下吧...2017-04-03
  • C#正则表达式使用方法示例

    这篇文章主要介绍了C#正则表达式使用方法,大家参考使用...2020-06-25
  • 常用C#正则表达式汇总介绍

    c#正则表达式,用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。...2020-06-25
  • JavaScript利用正则表达式替换字符串中的内容

    本文主要介绍了JavaScript利用正则表达式替换字符串中内容的具体实现方法,并做了简要注释,便于理解。具有一定的参考价值,需要的朋友可以看下...2017-01-09
  • 一文秒懂python正则表达式常用函数

    这篇文章主要介绍了python正则表达式常用函数及使用方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-05-07
  • Idea使用正则表达式批量替换字符串的方法

    这篇文章给大家介绍了Idea使用正则表达式批量替换字符串的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧...2021-07-21
  • PHP正则表达式之捕获组与非捕获组

    今天遇到一个正则匹配的问题,忽然翻到有捕获组的概念,手册上也是一略而过,百度时无意翻到C#和Java中有对正则捕获组的特殊用法,搜索关键词有PHP时竟然没有相关内容,自己试了一下,发现在PHP中也是可行的,于是总结一下,分享的同...2015-11-08
  • Python验证的50个常见正则表达式

    这篇文章主要给大家介绍了关于利用Python验证的50个常见正则表达式的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-11
  • C#编程自学之运算符和表达式

    这篇文章主要介绍了C#运算符和表达式,这是自学C#编程的第五篇,希望对大家的学习有所帮助。...2020-06-25
  • PHP正则表达式过滤html标签属性(DEMO)

    这篇文章主要介绍了PHP正则表达式过滤html标签属性的相关内容,实用性非常,感兴趣的朋友参考下吧...2016-05-06
  • js用正则表达式筛选年月日的实例方法

    在本篇文章里小编给大家整理的是一篇关于js用正则表达式筛选年月日的实例方法,对此有兴趣的朋友们可以学习下。...2021-01-04
  • C# 中使用正则表达式匹配字符的含义

    正则表达式的作用用来描述字符串的特征。本文重点给大家介绍C# 中使用正则表达式匹配字符的含义,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧...2020-06-25