0
我有一個字符串有兩個可能出來它將被除以&|
或只是|
有沒有一種方法來做一個或表達式來確定哪些是正確的正則表達式?在clojure的正則表達式中是否有OR表達式?
我有一個字符串有兩個可能出來它將被除以&|
或只是|
有沒有一種方法來做一個或表達式來確定哪些是正確的正則表達式?在clojure的正則表達式中是否有OR表達式?
我認爲您的意思是您希望匹配&|
或|
的字符串,然後在匹配的情況下檢查匹配的是哪種情況?由哈姆紮在關於這個問題的意見建議 - -
如果是的話,你可以用正則表達式中&
是可選的匹配做的,使用re-find
或捕捉組捕捉到的字符串匹配的部分,你然後可以檢查:
(re-find #"&?\|" "asdf|adsf")
;= "|"
(re-find #"&?\|" "asdf&|asdf")
;= "&|"
隨着捕捉組(使用peek
得到在向量的最後一個元素):
(re-matches #".*[^&](&?\|).*" "asdf&|asdf")
;= ["asdf&|asdf" "&|"]
製作'&''可選&\ |'? – HamZa