正则表达式与扩展正则表达式区别
生活随笔
收集整理的這篇文章主要介紹了
正则表达式与扩展正则表达式区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最近在學習正則表達式時,遇到了一些問題,究其原因是正則表達式與擴展正則表達式的區別沒有弄清楚
正則表達式與擴展正則表達式類似,只是擴展正則表達式表達更加簡單正則表達式需要打 \ 轉義字符 來表示某些字符的意思,而擴展正則表達式則不需要:\{m} 正則表達式表示至少表示前面的字符m次 {m} egrep一樣\? 正則表達式表示前面的字符0或1次 ? egrep一樣\+ 正則表達式表示前面的字符至少一次 + egrep一樣\(\) 正則表達式表示分組 () egrep一樣\| 正則表達式表示或 | egrep一樣其中一個問題就是IP地址不知道該如何來表示
IP地址是一個32位的二進制數,通常被分割為4個“8位二進制數”(也就是4個字節)。IP地址通常用“點分十進制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之間的十進制整數。例:點分十進IP地址(100.4.5.6),實際上是32位二進制數(01100100.00000100.00000101.00000110)。IP地址(英語:Internet Protocol Address)是一種在Internet上的給主機編址的方式,也稱為網絡協議地址。常見的IP地址,分為IPv4與IPv6兩大類。IP地址編址方案:IP地址編址方案將IP地址空間劃分為A、B、C、D、E五類,其中A、B、C是基本類,D、E類作為多播和保留使用。IPV4就是有4段數字,每一段最大不超過255。由于互聯網的蓬勃發展,IP位址的需求量愈來愈大,地址空間的不足必將妨礙互聯網的進一步發展。為了擴大地址空間,擬通過IPv6重新定義地址空間。IPv6采用128位地址長度。在IPv6的設計過程中除了一勞永逸地解決了地址短缺問題以外,還考慮了在IPv4中解決不好的其它問題。擴展正則表達式表示:
"\<(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])"解釋:用第一個括號里的數字表示 (個位數|十位數|以一開頭的三位數|200-049|250-255)用第二個括號表示 ((數字).引用)后面的打括號表示引用次數 為3 x(xx).x(xx).x(xx).最后一個括號表示 x(xx)總的命令結果表示 x(xx).x(xx).x(xx).x(xx)注:四個xxx的范圍已經限定實例:
ifconfig | "\<(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])"inet 172.18.250.78 netmask 255.255.0.0 broadcast 172.18.255.255inet 192.168.6.131 netmask 255.255.255.0 broadcast 192.168.6.255inet 127.0.0.1 netmask 255.0.0.0inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255轉載于:https://blog.51cto.com/13572413/2064216
新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!總結
以上是生活随笔為你收集整理的正则表达式与扩展正则表达式区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【cocos2d-x从c++到js】14
- 下一篇: “物联网”“云计算” IT业新概念风起云