0
我有一个字符串有两个可能出来它将被除以&|
或只是|
有没有一种方法来做一个或表达式来确定哪些是正确的正则表达式?在clojure的正则表达式中是否有OR表达式?
我有一个字符串有两个可能出来它将被除以&|
或只是|
有没有一种方法来做一个或表达式来确定哪些是正确的正则表达式?在clojure的正则表达式中是否有OR表达式?
我认为您的意思是您希望匹配&|
或|
的字符串,然后在匹配的情况下检查匹配的是哪种情况?由哈姆扎在关于这个问题的意见建议 - -
如果是的话,你可以用正则表达式中&
是可选的匹配做的,使用re-find
或捕捉组捕捉到的字符串匹配的部分,你然后可以检查:
(re-find #"&?\|" "asdf|adsf")
;= "|"
(re-find #"&?\|" "asdf&|asdf")
;= "&|"
随着捕捉组(使用peek
得到在向量的最后一个元素):
(re-matches #".*[^&](&?\|).*" "asdf&|asdf")
;= ["asdf&|asdf" "&|"]
制作'&''可选&\ |'? – HamZa