草庐IT

scala - 卡斯巴/礼拜 : How to query a field that a part of a string is contained?

coder 2023-10-31 原文

我尝试用 Casbah 和 Salat 编写一个查询来查询一个包含部分名称的字段。 我尝试使用这样的正则表达式(在 SalatDAO 中):

val regexp = (""".*"""+serverName+""".*""").r
val query = "serverName" -> regexp
val result = find(MongoDBObject(query))

val regexp = ".*"+serverName+".*"

记录在 MongoDB 中,当我用完整名称搜索它时,它起作用了。

告诉 casbah 搜索字符串的一部分的正确方法是什么?

我想修复的另一件事是参数的字符串连接。 有没有默认的方法用casbah转义输入参数,所以参数不是 解释为 javascript 命令?

最好的问候, 奥利弗

最佳答案

在 mongodb shell 中,您可以通过以下方式找到包含特定字符串的服务器名称

db.collection.find({serverName:/whatever/i})

我对casbah没有任何经验,我相信它一定是这样的。请测试

val regexp = ("""/"""+serverName+"""/i""").r  
find(MongoDBObject("serverName" -> regexp))

关于scala - 卡斯巴/礼拜 : How to query a field that a part of a string is contained?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8848106/

有关scala - 卡斯巴/礼拜 : How to query a field that a part of a string is contained?的更多相关文章

  1. ruby - 分布式事务和队列,ruby,erlang,scala - 2

    我有一个涉及多台机器、消息队列和事务的问题。因此,例如用户点击网页,点击将消息发送到另一台机器,该机器将付款添加到用户的帐户。每秒可能有数千次点击。事务的所有方面都应该是容错的。我以前从未遇到过这样的事情,但一些阅读表明这是一个众所周知的问题。所以我的问题。我假设安全的方法是使用两阶段提交,但协议(protocol)是阻塞的,所以我不会获得所需的性能,我是否正确?我通常写Ruby,但似乎Redis之类的数据库和Rescue、RabbitMQ等消息队列系统对我的帮助不大——即使我实现某种两阶段提交,如果Redis崩溃,数据也会丢失,因为它本质上只是内存。所有这些让我开始关注erlang和

  2. ruby - Rubys 的 each_slice 的 Scala 版本? - 2

    Scala有Rubys的版本吗each_slice来自Array类? 最佳答案 Scala2.8有grouped将数据分成大小为n的block(可用于实现each_slice功能):scala>vala=Array(1,2,3,4,5,6)a:Array[Int]=Array(1,2,3,4,5,6)scala>a.grouped(2).foreach(i=>println(i.reduceLeft(_+_)))3711据我所知,在2.7.x中没有任何东西可以开箱即用,但是从take(n)和drop(n)来自RandomAccess

  3. ruby - Scala 缺少哪些动态语言(如 Ruby 或 Clojure)的特性? - 2

    当您选择Scala(或F#、Haskell、C#)等静态类型语言而不是Ruby、Python、Clojure、Groovy(具有宏或运行时元编程功能)等动态类型语言时,您在实践中失去了什么)?请考虑最好的静态类型语言和最好的(在您看来)动态类型的语言,而不是最差的。答案总结:恕我直言,Ruby等动态语言相对于Scala等静态类型语言的主要优势是:快速的编辑-运行周期(JavaRebel是否缩小了差距?)目前Scala/Lift社区比Ruby/Rails或Python/Django小得多可以修改类型定义(尽管动机或需要不是很清楚) 最佳答案

  4. ruby - 来自 Rubyist 的关于 Scala 的问题 - 2

    我最近在业余时间四处寻找学习一门新语言,Scala似乎很有吸引力。我有几个问题:不知道Java会强加一个挑战学习吗?那将会一个很大的缺点稍后的?(即人们多久依赖一次特定于Java的库?)差别有多大与ruby相比?(除了被静态类型)是否引入很多新术语,或者我会熟悉大多数语言机制?您会推荐哪些资源?我关注ProgrammingScala和BeginningScala书籍虽然主观,但使用Scala编程是否有趣?:P谢谢 最佳答案 Ruby和Scala之间有许多共同的概念。我已经有一段时间没有编写Ruby代码了,所以这并不详尽。RubySc

  5. Ruby vs Scala——各自的优缺点 - 2

    按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭11年前。有什么好处和限制Scala与Ruby比较的语言,尤其是从Web应用程序开发人员的角度来看?强烈欢迎比较图表和证明链接。P.S.这不是圣战题(-:

  6. ruby - Scala 的扩展性是否优于其他 JVM 语言? - 2

    这是我目前知道的唯一询问方式。据了解,Scala使用Java虚拟机。我以为Jruby也是。Twitter将其中间件切换为Scala。他们可以做同样的事情并使用Jruby吗?他们是否可以从Jruby开始,而不是因为扩展问题导致他们首先从Ruby迁移到Scala?我不明白Jruby是什么吗?我假设因为Jruby可以使用Java,所以它可以扩展到Ruby不能的地方。在这种情况下,一切都归结为静态类型与动态类型吗? 最佳答案 Scala是“可扩展的”,因为语言可以通过库进行改进,使扩展看起来像是语言的一部分。这就是为什么actors看起来像

  7. javascript - 在 Play 模板中混合使用 JavaScript 和 Scala - 2

    我不确定这是怎么做到的。我可以对尝试使用的路由进行硬编码,但我想以正确的方式进行。我有一个下拉菜单,需要在更改时加载新页面。这基本上是我尝试这样做的方式(我已经尝试了一些变体):@getRoute(value:String)=@{routes.Accounts.transactions(Long.valueOf(value))}$(function(){$("select[name='product']").change(function(){location.href=@getRoute($(this).val());}).focus();$('a.view.summary').at

  8. javascript - 为什么 Scala 需要 def 语句? - 2

    我是scala的新手,但我有javascript的背景。虽然我看到需要区分val和var(可变和不可变),但我不明白为什么要使用def语句应该永远需要。如果函数是真正的一等公民,就像在javascript中一样,为什么要用def而不是用val声明它们?该设计决策是基于JVM相关约束,还是存在一些我无法理解的底层逻辑? 最佳答案 函数的一个很大的限制是它们不能作为一个值是泛型的。例如deffoo[A](bar:A):Unit那不能表示为一个函数值valfoo:A=>Unit//Ais_not_atypeparameter需要类型参数A

  9. javascript - Scala + Web 框架 + Javascript 框架有哪些好的组合? - 2

    按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭11年前。很长一段时间以来,我一直在尝试研究一些不同的东西来构建我计划中的Web项目(笑),我经历了一些Django和Rails但放弃了,主要是因为语言。我使用Java,但不想使用JSP/JSF/Servlet进行开发...阅读Scala再次激发了我对学习网络技术以构建我的项目的兴趣。老实说,我从来没有使用过javascript框架,因此也没有使用过json。我浏

  10. javascript - Scala 到 JavaScript 的编译有效吗? - 2

    我刚刚读到有关java2javascriptparser的信息和scala的演示。您对这个框架有任何经验吗?性能怎么样?我可以使用现有的JS代码/框架吗?感谢任何帮助。编辑这是一个非常好的scala到javascript的交叉编译器:https://www.scala-js.org/ 最佳答案 我一年多前就这样做了。性能还可以,但代码量往往很大。我不会推荐它用于生产,但如果有用的话可以放弃代码。还有其他努力在浏览器上运行Scala。最好的办法是为现有的Scala编译器创建一个JavaScript后端。以下是一些其他需要关注的项目:h

随机推荐