Làm cách nào để thoát khỏi số "*"
đến "\*"
trong clojure? dường như không thể có được nó để làm việc:Thay thế * bằng * trong Clojure
(s/replace "A*B" #"*" "*")
sản xuất "A*B"
(tất nhiên)
(s/replace "A*B" #"*" "\*")
thất bại: Unsupported escape character: *
(s/replace "A*B" #"*" "\\*")
sản xuất "A*B"
một lần nữa!
(s/replace "A*B" #"*" "\\\*")
không thành công: Unsupported escape character: *
một lần nữa!
(s/replace "A*B" #"\\\\*" "*")
sản xuất "A\\*B"
tôi không thể lấy nó để sản xuất A\*B
Bất kỳ ý tưởng? Cảm ơn
Điều đó chỉ hoạt động khi bạn pr int kết quả: người dùng => (clojure.string/thay thế "A * B" # "\ *" "\\\\") "A \\ * B" user => (clojure.string/replace "A * B" "*" "\\ *") "A \\ * B" Tôi phải sử dụng kết quả trong một regex. Tôi không muốn in nó. – sebi
@sebi Tôi đã cập nhật câu trả lời của mình. – sloth
Tôi muốn thay thế "BLA * BLA" thành "BLA \\ * BLA" - chuỗi chính xác này. Thật buồn cười, ví dụ bạn đã cho tôi không hoạt động .... – sebi