如何在 Clojure 重新模式中打开/关闭贪婪性?
(re-find #"(.+)-(.+)" "hello-world-you") => ["hello-world-you" "hello-world" "you"]
对比
(re-find #"(.+)-(.+)" "hello-world-you") => ["hello-world-you" "hello" "world-you"]
最佳答案
?
使量词(例如 +
)变得非贪婪。默认情况下,它们是贪婪的。
- 贪婪:
(.+)
- 非贪婪:
(.+?)
顺便说一句,这只是直接、简单、切中要害的答案。 @fge 的回答提出了更好的做法。检查一下 future 的表达方式。
关于regex - 打开/关闭 Clojure 重新模式中的贪婪性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8842346/