※ 本文為 dinos.bbs. 轉寄自 ptt.cc 更新時間: 2012-10-01 14:21:08
看板 RegExp
作者 標題 Re: [問題] (?:^|[^\\])的意思為何?
時間 Thu Sep 6 01:36:37 2012
※ 引述《kilva (嗡嗡)》之銘言:
: 程式語言為JavaScript,完整的正規運算式為
: /^\s+|((?:^|[^\\])(?:\\.)*)\s+$/g
: 我個人猜測是和
: /^\s+|(^(?:\\.)*)\s+$|([^\\](?:\\.)*)\s+$/g
: 一樣意思,即
: /^\s+/g(前端數個空白)
: 或
: /(^(?:\\.)*)\s+$/g(前頭零個以上脫逸字元後接數個空白)
: 或
: /([^\\](?:\\.)*)\s+$/g(後端有零個以上脫逸字元後接數個完白)
: 第一次看到^後直接接|的正規運算式,請問各位這樣的想法是否正確。
: 謝謝。
1. ^\s+
開頭 + 1個以上空白
OR
2.
(1) (^|[^\\])
(開頭 or 非\字元) *1
(2) (\\.)*
(\ + 1個任意字元) *0~n
(3) \s+$
1個以上空白直到結尾
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.161.144.158
→ :所以2.(1)的 ^| 是什麼開頭?1F 09/06 04:50
→ :^ Matches the beginning of a line or string.2F 09/06 05:09
→ :$ Matches the end of a line or string.
→ :$ Matches the end of a line or string.
→ : (^|[^\\])也可以寫成[^\\^]吧。4F 09/06 10:13
推 :不可以5F 09/06 17:29
→ :請問為何不可以?6F 09/06 20:30
推 :[^...] 表示任何非...的字元,這和 | 前的 ^ 明顯不同義。7F 09/07 05:17
→ :再說, ^不會消耗字元,只是抓取定點,[...]會消耗一個字元。
→ :再說, ^不會消耗字元,只是抓取定點,[...]會消耗一個字元。
→ :]9F 09/07 05:34
推 :了解了 感謝!10F 09/07 23:20
→ :這一整句應該是在抓字串裡的跳脫字元吧?11F 09/10 01:38
→ :2-1前面的^ 搭上2.2的(?:\\.)* 如果是以\x 開頭的 或者
→ :2.1後面的[^\\]加上(?:\\.)* 不是\\x這種形式的
→ :2-1前面的^ 搭上2.2的(?:\\.)* 如果是以\x 開頭的 或者
→ :2.1後面的[^\\]加上(?:\\.)* 不是\\x這種形式的
--
※ 看板: dinos 文章推薦值: 0 目前人氣: 0 累積人氣: 128
回列表(←)
分享