亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Regex > 正文

正則表達式與數學(方程式、線性方程)

2020-03-16 21:11:54
字體:
來源:轉載
供稿:網友
大清早的打QQ去,收到一位網友的信息。問得是正則表達式判斷素數的。去年看到過,沒記錄下來。
 
 
正則表達式如下: 
復制代碼代碼如下:

^1?$|^(11+?)/1+$ 可以判斷素數(換成n個1的形式,n為數字的大小。比如5轉換為11111;3轉換為111;2轉換為11。) 

什么是素數? 
初中學的吧。我們老師當初教我們的是“質數”。看下概念: 
質數又稱素數。指在一個大于1的自然數中,除了1和此整數自身外,沒法被其他自然數整除的數。 
換句話說,只有兩個正因數(1和自己)的自然數即為素數。比1大但不是素數的數稱為合數。1和0既非素數也非合數。 
這個正則表達式是什么意思? 
【^1?$|^(11+?)/1+$】中間用【|】分開?!緗】在正則語法里,表示“或”,作用于其前后兩個單元。(還是不明白的看下面,明白的跳過下面這段) 
復制代碼代碼如下:

比如【ab|cd】可以匹配“ab”、也可以匹配“cd”,意思是除了“ab”就是“bc”,如果想匹配“abd”、“acd”那【|】的作用域得改下,加個范圍 
改成【a(b|c)】(匹配結果分配組)或者【a(?:b|c)d】(匹配結果不分配組,更高效率)。 

繼續剛剛的正則,分為兩個分支,其一為【^1?$】和【^(11+?)/1+$】。其中【^】脫字符在正則語法中,除了在中括號【[]】中都是代表開頭的意思,在中括號中的表示非。 
第一個分支【^1?$】匹配的是“1”或者“”(空字符串)。 
第二個分支【^(11+?)/1+$】,先看下括號內的【(11+?)】匹配的是字符“1”后面接著【1+】就是1到無數個1。后面的【?】問號表示非貪婪,就是盡量少的匹配。 
接著往后看【/1+】中,【/1】表示引用已匹配的第一個組的結果。也就是第一個【()】括號匹配的結果。同理【/2】就是第二個括號捕獲的結果。(小提示:上面提到的【(?:)寫法就是不分配組,這樣引用的話,就引用不到了】) 
【+】就是1到無數個了。這個表達式我們可以這么看?!?11+?)】看成數學中的1+n,其中n為大于0的正整數。外面的【/1+】也就是引用前面這個組的次數。理解成m倍,其中m為大于0的正整數。 
那整個表達式就是(1+n)*m。因為n、m都大于0,那么1+n肯定大于1,最小為2,最大為無窮大;m最小為1,最大為無窮大。 
那么,一個大于2的正整數的任何大于零的倍數永遠都是合數,也就是非素數。 
再回過頭來看看這個表達式。匹配的分別為0個或1個字符串“1”,也就是數字0,數字1。和其他所有合數。整個表達式,如果成功匹配就是非素數,如果不匹配就是質數。這就是對的了。 
復制代碼代碼如下:

if (preg_match('/^1?$|^(11+?)/1+$/i', $subject)) { 
#不是素數 
} else { 
# 是素數 

小提示:此鑒定是否為素數方法僅研究學習用,不能用到正式程序中,字符串過長,會造成非常恐懼大的回溯。 
英文博客地址:http://blog.stevenlevithan.com/archives/algebra-with-regexes 
在上面的博文中,有提到兩個方程式與正則表達式,我們一起來研究下。 
•二元方程17x + 12y = 51,其表達式【^(.*)/1{16}(.*)/2{11}$】。很好理解?!?.*)】也就是0到無數個【.】點號。(這里是接著上文說的,其實,【.】點號想表示的是字符“1”) 
也就是0到無數個1,后面【/1】引用一次。后面【{16}】就是16次。作用于前面的【/1】,也就是16次引用。加上開始的【(.*)】一共正好17次。后面一個就不說了,跟這個一樣。 
正則引擎會依次嘗試【(.*)】中0到無數個字符“1”,0個字符“1”,1個字符“1”,2個字符“1”一直增加的嘗試。直到成功,否則要嘗試完所有字符“1”的最大個數(這里是51個字符“1”)。 
•二、三元方程式11x + 2y + 5z = 115,其表達式為【^(.*)/1{10}(.*)/2{1}(.*)/3{4}$】,理解就跟上面那個一樣。注意【/2】、【/3】值得是第2,第3個括號捕獲的內容,別看花眼了。 
——————-分割線—————— 
上面幾個有意思的數學題都是將整數轉換為對應個數的字符“1”。下面這個,是轉換為二進制數的。 
先吃飯,以后再寫。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美国产在线电影| 麻豆国产精品va在线观看不卡| 国产精品999| 欧美亚洲另类视频| 久久久久一本一区二区青青蜜月| 欧美在线性爱视频| 中文字幕久久久av一区| 亚洲精品国产品国语在线| 超碰日本道色综合久久综合| 国产精品毛片a∨一区二区三区|国| 日韩在线免费视频观看| 国产精品午夜一区二区欲梦| 97国产在线视频| 久久精品青青大伊人av| 色综合男人天堂| 3344国产精品免费看| 国产精品久久久久久久app| 91日韩在线播放| 97精品视频在线播放| 日韩毛片在线观看| 亚洲老板91色精品久久| 911国产网站尤物在线观看| 亚洲自拍另类欧美丝袜| 国产在线视频一区| 亚洲色图13p| 韩剧1988免费观看全集| 欧美国产在线电影| 久久九九全国免费精品观看| 中文字幕亚洲一区二区三区| 日本精品一区二区三区在线播放视频| 日韩欧美国产免费播放| 91精品久久久久久久久久| 美女久久久久久久| 欧美老女人性视频| 欧美激情极品视频| 久久影院在线观看| 国产中文欧美精品| 国产亚洲欧美aaaa| 91精品视频免费| 欧美日韩在线一区| 亚洲美女精品久久| 欧美在线观看视频| 日韩激情在线视频| 亚洲最新视频在线| 成人性生交xxxxx网站| 青青在线视频一区二区三区| 九九九久久久久久| 亚洲成人精品在线| 在线观看久久久久久| 91在线免费看网站| 欧美日韩亚洲一区二区| 欧美亚洲国产日本| 日韩欧美精品网址| 日韩亚洲欧美成人| 日韩免费在线视频| 亚洲精品久久久久中文字幕欢迎你| 成人免费网站在线| 国产日韩综合一区二区性色av| 九九热在线精品视频| 日韩av在线免费观看一区| 69av成年福利视频| 最近2019年中文视频免费在线观看| 久久网福利资源网站| 国产九九精品视频| 97超碰色婷婷| 国产精品久久久久久久久久久久久久| 亚洲成人三级在线| 国产精品久久久久久亚洲影视| 欧美视频在线看| 亚洲免费小视频| www.xxxx欧美| 不卡在线观看电视剧完整版| 一本色道久久88亚洲综合88| 欧美多人乱p欧美4p久久| 国产成人一区二区| 亚洲福利在线视频| 91av国产在线| 狠狠干狠狠久久| 国产欧美欧洲在线观看| 日产日韩在线亚洲欧美| 日韩av在线最新| 亚洲四色影视在线观看| 97av在线影院| 91亚洲精品一区二区| 久久久免费精品视频| 精品美女永久免费视频| 日韩电视剧在线观看免费网站| 国产中文字幕日韩| 黑人欧美xxxx| 国产精品香蕉国产| 精品国偷自产在线视频99| 久久精品成人欧美大片古装| 精品呦交小u女在线| 97人洗澡人人免费公开视频碰碰碰| 中文字幕亚洲字幕| 亚洲午夜未满十八勿入免费观看全集| 日韩大胆人体377p| 97视频色精品| 国产精品国产三级国产专播精品人| 欧美另类极品videosbestfree| 国产精品日韩精品| 疯狂蹂躏欧美一区二区精品| 91精品国产色综合| 富二代精品短视频| 欧美日韩性视频在线| 欧美激情xxxx| 伊是香蕉大人久久| 777777777亚洲妇女| 日韩精品视频在线观看网址| 在线看欧美日韩| 精品成人69xx.xyz| 久久久久这里只有精品| 国内精品一区二区三区| 成人免费网站在线| 91老司机在线| 欧美午夜久久久| 欧美成aaa人片在线观看蜜臀| 久久久视频免费观看| 97成人精品视频在线观看| 国产精品精品久久久久久| 亚洲免费视频在线观看| 欧美激情在线观看视频| 成人黄色片在线| 国外成人在线播放| 久久久精品国产网站| 亚洲电影免费观看高清| 国产成人福利视频| 91网在线免费观看| 成人日韩在线电影| 欧美精品日韩www.p站| 欧美精品videos性欧美| 国产精欧美一区二区三区| 成人免费看片视频| 欧美午夜xxx| 国内成人精品视频| 久久久国产一区| 亚洲精品福利资源站| 亚洲裸体xxxx| 国产一区二区三区网站| 91在线免费网站| 国产99久久精品一区二区永久免费| 欧美午夜www高清视频| 精品国产一区二区三区久久| 国产精品美女www| 亚洲激情电影中文字幕| 亚洲午夜av久久乱码| 中文字幕无线精品亚洲乱码一区| 精品国产31久久久久久| 国语对白做受69| 精品免费在线观看| 国产精品日韩一区| 欧美麻豆久久久久久中文| 国产在线观看不卡| 日韩在线免费av| 久久久国产精品亚洲一区| 国模精品视频一区二区三区| 日韩高清有码在线| 一区二区欧美在线| 国产精品aaa| 精品成人国产在线观看男人呻吟| 欧美视频专区一二在线观看| 国产成人一区三区| 精品国产户外野外| 欧美在线亚洲一区|