Re: [請益] asp.net的正規表示式
※ 引述《hoverwolf (陷入無盡幸福深淵)》之銘言:
: ●驗證郵遞區號
: 1. 3位數字,如198
: 2. 3位數字加2位數字,如198-24
: 3. 3位數字加4位數字,如198-3216
: 可檢查出上列三種郵遞區號格式是:^\d{3}-d{4}$|^\d{3}=\d{2}$|^\d{3}
: 上面的格式實在看不懂它是怎麼解出來的,雖然有猜到{3}是3位數字,但是不知為什麼要再加上d{3}
: 而d{3}和{3}有什麼不一樣呢??另外像^\和$|這些是代表什麼呢??實在不懂啊>"<
你跟初入門看英文文章的人一樣有斷句問題 |D
微&軟的regex 都故意和別人不一樣,但是基本的共通處還是有的
| 表示或(or)
所以你看到的一個regex其實是三個:
^\d{3}-\d{4}$
或 ^\d{3}=\d{2}$
或 ^\d{3}
^ 表示字串開頭
$ 表示字串結尾。以上這三個都符合慣例。
\d 正常習慣沒有 \ 一個字當作控制碼的,看到 \d 就要想 \d 整包是
一個控制碼,這裡也是一樣。\d表示[:digit:],也就是[0-9]。
{k} 表示前面的符號重覆 k 次,至於為什麼,因為java也是這樣。
寫到這裡我看這郵遞區號必定不是台灣的郵遞區號,台灣哪來七位數的郵遞區
號?中間也沒有 - 或 = 的。你這顯然是在微&軟的文件裡面找到的範例,那
為什麼不去找找他們關於regex的說明呢?
: 所以驗證電話號碼格式如下:
: \([0-9]{2,3}\][0-9]{2,4}-[0-9]{4}
{j, k} 容許重覆次數,最少 j 次,最多 k 次。
[0-9] 相當於 [0123456789]。上面有提到。同理[A-E]就是ABCDE。
: 上面的格式我不懂的是,(xx)的格式表示方法看來應該是\(代表表示(
: 那為什麼-不是用\-來表示?所以不懂什麼時候要用\什麼時候不用\
( ) 是regex控制字元,可以用來包住整包字元然後後面放{k},因此需要跳脫。
- 不是控制字元所以不要。你以上打錯了,應該是 \) 不是 \]。
: ●驗證EMail地址
: \W+([-+.']\W+)*@\W+([-.]\W+)*\.\W+([-.]\W+)*
: 上面的格式我就完全看不懂它在寫什麼了,也不知道怎樣的EMail如果來驗證的話其實是錯的Orz
: 請大大幫我解惑一下
\W 任意文字 ([A-Za-z])
+ 出現最少一次,最多無限次
[-.] 中括號內的文字符號其中一個
( ) 括號內整包當作一個單元
* 出現零到無限次,也就是說可以不要
: ●驗證URL
: http(s)?://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?
? 前面的符號出現0或1次。
所以 http(s)? 就等於 (http|https)
要特別注意一個符號
\w 這和\W不一樣,大W是[A-Za-z],小w比大W更多,應該是包括
[0-9],在其他regex中也稱為[:alnum:] (alphabets and number)。
: 其實打到這邊我就在想,是不是這些格式都是固定的勒=.=?
當然是固定的 -_-
再說一遍,你何不找.NET regular expression的線上資源來看?
--
BATCH 03 : 買張床 - 切達大俠 - 伐木人之歌 - http://tinyurl.com/3zpyx5
[B4準備中]: 謳歌金錢(7/02) - 單車超人(7/23) - http://tinyurl.com/66v6vq
[ 番外篇 ]: 包租婆也有過當羅莉的時候(7/17) - http://tinyurl.com/6j4ale
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
■ 蒙帝派松正體中文計畫 ■ Spam-a-lot and enjoy the pythonesque delight!
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ http://www.youtube.com/user/JamesBondXD▄▄
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.115.208.87
推
10/23 16:24, , 1F
10/23 16:24, 1F
→
10/23 16:25, , 2F
10/23 16:25, 2F
→
10/23 16:25, , 3F
10/23 16:25, 3F
→
10/23 16:32, , 4F
10/23 16:32, 4F
→
10/23 16:50, , 5F
10/23 16:50, 5F
→
10/23 16:52, , 6F
10/23 16:52, 6F
→
10/23 16:52, , 7F
10/23 16:52, 7F
→
10/23 16:53, , 8F
10/23 16:53, 8F
※ 編輯: MOONRAKER 來自: 59.115.219.47 (10/24 02:13)
→
10/24 02:14, , 9F
10/24 02:14, 9F
推
10/24 14:30, , 10F
10/24 14:30, 10F
→
10/24 14:31, , 11F
10/24 14:31, 11F
→
10/24 14:32, , 12F
10/24 14:32, 12F
→
10/24 14:33, , 13F
10/24 14:33, 13F
推
10/24 14:57, , 14F
10/24 14:57, 14F
→
10/24 14:58, , 15F
10/24 14:58, 15F
→
10/24 14:59, , 16F
10/24 14:59, 16F
→
10/24 15:05, , 17F
10/24 15:05, 17F
→
10/24 15:08, , 18F
10/24 15:08, 18F
→
10/24 15:08, , 19F
10/24 15:08, 19F
→
10/24 21:34, , 20F
10/24 21:34, 20F
→
10/24 21:34, , 21F
10/24 21:34, 21F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):