看板 PHP 關於我們 聯絡資訊
我在某個地方看到下面這段程式碼: <?php echo preg_replace_callback('~-([a-z])~', function ($match) { return strtoupper($match[1]); }, 'hello-world'); // outputs helloWorld ?> 請問 ~ 這個符號是什麼意思?我在很多正規表示法的文章都沒看到。 是指任意字元嗎?跟 . 有何不同? 我發現如果把 ~ 改成 . 也就是 '~-([a-z])~ 改成 '.-([a-z]). 出來的結果一樣。 有沒有 ~ 的說明? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.44.189.88
bibo9901:php.net/manual/en/regexp.reference.delimiters.php 07/09 11:08
MOONRAKER:regex的開始結束符號,一般用 / ,他搞神秘改成 ~ 而已 07/09 11:15
MOONRAKER:你也可以改用 # 看看 07/09 11:16
原來開始結束的符號可以隨便用耶。 一樓提供的網址說明: A delimiter can be any non-alphanumeric, non-backslash, non-whitespace character. /http:\/\// #http://# ~http://~ 那這樣可讀性還比較大! ※ 編輯: lamoni 來自: 114.44.189.88 (07/09 11:32)
bibo9901:的確可以隨便用...看你高興就好 07/09 13:20
MOONRAKER:這種\/\/有時候真是令人痛不欲生 :P 07/09 13:24
MOONRAKER:Java更慘,\還要再escape一次,所以是\\/\\/ ... 07/09 13:25
JYHuang:寫個程式還要一直揮手的,好累 XD 07/09 14:06
MOONRAKER:揮手就對 :D 07/16 14:49
godspeedlee:用regexbuddy測完複製貼上就好了,不用揮了>< 08/10 17:03