日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

正则表达式的知识普及

發布時間:2023/12/31 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 正则表达式的知识普及 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

為什么80%的碼農都做不了架構師?>>> ??

1.什么事正則表達

正則表達式是可以匹配文本片段的模式。例如'python'可以用來匹配字符串'python'。你可以用這種匹配行為搜索文本中的模式,并且用計算后的值替換特定模式,或者將文本進行分段。


  • 通配符
正則表達式可以匹配任意一個的字符串。符號為(.),可以匹配除了換行之外的任意字符。例如正則表達式‘.ython',可以匹配’python',或者'jython',或者' ython'等,但不能匹配'cpython'或者'ython'這兩個,因為(.)表示一個字符串,而不是沒有或者多于一個。
  • 對特殊字符進行轉義
但,當真的需要匹配(.)這個符號時,需要用到轉義字符\。例如正則表達式'python\.org'匹配'python.org'。而如果是'python.org',則還可以匹配'pythonaorg'或者'pythonworg'等,不符合我們的想法。
  • 字符集
可以使用中括號來創建字符集,表示中括號內的任意字符。例如正則表達式'[pj]ython'匹配'python'和'jython',其他內容就不能再匹配了。而[a-z]表示字符集a到z中的任意一個字符,可以選用反轉字符[^a-c]表示除了a,b,c外的任意一個字符。
  • 選擇符和子模式
如果我們只想從幾個里面選擇其中一個的話,可以使用管道符號(|),例如正則表達式'python|perl',就只可以從'python'或者'perl’兩個匹配中選擇一個。可以對那個表達式進行簡化,得到'p(ython|erl)'。這就是子模式。
  • 可選項和重復子模式

在子模式后面加上問號,就變成可選項。它可能會出現在匹配字符串中,但并非必須的。例如,下面這個正則表達式:‘(http://)?(www\.)?python\.org',這里會匹配'http://www.python.org'或者'http://python.org'或者'www.python.org'或者'python.org'這四種情況。

問號表示子模式可以不出現或者出現一次。其他情況就如下

(pattern)*:表示pattern可以出現0次,1,次,2次等等

(pattern)+:表示pattern至少出現1次

(pattern){m,n}:表示pattern至少出現m次,至多出現n次

  • 字符串的開始和結尾
目前為止,所出現的模式匹配都是針對整個字符串,但也可以對表達式的字符串確定其開始位置還是結尾位置。(^)標記開始,美元符號($)表示結尾。如(^ht+p)就是表示h開頭的字符串,而(ht+p$)表示p結尾的字符串。


轉載于:https://my.oschina.net/gzckj/blog/102459

總結

以上是生活随笔為你收集整理的正则表达式的知识普及的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。