2017年8月2日 星期三

REGULAR EXPRESSION SAMPLE

REGULAR EXPRESSION SAMPLE

Hyper Link : '(https?://[^\s)";]+\.(\w|/)*)'

https?:// => s 可有可無,所以可以是 http:// or https://
[^\s)";]+ => [^] 除了內容值以外的值,\s 空白,則表示非空白, ), ", ;,這邊可以考慮再加上 (,而 + 指至少出現 1 or 多次
\. => 不使用 Regular Expression 的 . (除換行外其他字符)
(\w|/)* => 在第一個 https:// 後的第一個 . 後,\w : 0-9, a-z, A-Z 或 /,* 可出現也可不出現


E-Mail : \w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z]+$

\w+ :  任一字母、數字或下劃線 (_),且至少要出現一次
(-\w+) : - 後面接 任一字母、數字或下劃線 (_)
(\.\w+) : . 接任一字母
((-\w+)|(\.\w+))* : 可以是 - 後接任一值 or . 接任一值
\@ : 一定要有 @
[A-Za-z0-9]+ : @ 後可接 A-Z, a-z, 0-9 至少要有一值 or 多值
(\.|-) : 接 . or -
(\.|-)[A-Za-z0-9]+)* : . or - 後接 A-Z, a-z, 0-9 至少要有一值 or 多值
\.[A-Za-z]+$ : $ 表字串最後一定要是 . 接 A-Z, a-z  至少要有一值 or 多值

========================================
Above Info. Reference From Book:Deep in Python Web Crawler - China Machine Press (經通 Python 網路爬蟲 - 機械工業出版社 - 韋瑋)
========================================

IP Address : \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}

\d : 0-9
{1,3} : 字數要 1~3 碼

"r" 的使用 : r'\d\d\d' 主要是省略 '\\d\\d\\d'

r : 將字符串記為原始字串,不用再包轉換自串 e.g. '\n' 要留下 \ => \\n,但使用 r'\n' 即可保留

python :


import re

phoneNumRegex  = re.compile(r'\d\d\d\d\d\d\d\d')
phoneNumRegex2 = re.compile('\\d\\d\\d\\d\\d\\d\\d\\d')

mo = phoneNumRegex.search('Today is 20171121')
print(mo.group())

mo = phoneNumRegex2.search('Today is 20171121')
print(mo.group())

>>> 20171121
>>> 20171121





沒有留言:

張貼留言

How to install & specified python version or distreibtuion package version in google colab

在買了 RTX 3080 要來 挖礦...  嗯~是跑機器學習後,結果發現了 GOOGLE COLAB,其實之前在「GAN 對抗式生成網路」一書就有看到,但資訊人就是什麼都想自己安裝,在本機用 Anaconda + pyCharm 弄了 GPU 環境,結果有天從新竹回家發現家裡沒...