0
在以下elisp代碼中使用\\|o+
的含義是什麼?爲什麼它與第一個例子不同?'string-split'函數中'\ | o +'的含義是什麼?
(split-string "ooo" "o+" nil)
;; ("" "")
(split-string "ooo" "\\|o+" nil)
;; ("" "o" "o" "o" "")
在以下elisp代碼中使用\\|o+
的含義是什麼?爲什麼它與第一個例子不同?'string-split'函數中'\ | o +'的含義是什麼?
(split-string "ooo" "o+" nil)
;; ("" "")
(split-string "ooo" "\\|o+" nil)
;; ("" "o" "o" "o" "")
"\\|"
指定正則表達式匹配"\\|o+"
一個空字符串,或者一個或更多的「○」 S兩邊的表達式之間的替換,所以。
在第一個示例中,您返回了由三個「o」分隔的兩個空字符串。
在第二個示例中,空字符串分隔符與輸入中的每個字符相匹配,因此每個字符都是單獨返回的。