小编arj*_*nes的帖子

如何使用布尔搜索语法进行Java字符串匹配?

我正在寻找一个可以接受用户查询和文本的Java/Scala库,如果有匹配则返回.

我正在处理一个信息流,即:Twitter Stream,并且无法负担使用批处理过程,我需要实时评估每条推文,而不是通过Lucene RAMDisk对其进行索引并稍后查询.

可以使用ANTLR创建一个解析器/词法分析器,但这是常见的用法,我不相信之前没有人创建过lib.

来自TextQuery Ruby库的一些示例正是我所需要的:

    TextQuery.new("'to be' OR NOT 'to_be'").match?("to be")   # => true

    TextQuery.new("-test").match?("some string of text")      # => true
    TextQuery.new("NOT test").match?("some string of text")   # => true

    TextQuery.new("a AND b").match?("b a")                    # => true
    TextQuery.new("a AND b").match?("a c")                    # => false

    q = TextQuery.new("a AND (b AND NOT (c OR d))")
    q.match?("d a b")                                         # => false
    q.match?("b")                                             # => false
    q.match?("a b cdefg")                                     # => true

    TextQuery.new("a~").match?("adf")                         # => true
    TextQuery.new("~a").match?("dfa") …
Run Code Online (Sandbox Code Playgroud)

java scala textmatching booleanquery

13
推荐指数
1
解决办法
1940
查看次数

部署两个不同的Play!应用程序在同一主机名上

我使用Play Framework开发了2个应用程序,访问不同的信息,因此将其合并为单个应用程序没有意义.

现在我需要在同一个主机名上部署这两个应用程序,每个应用程序都在一个单独的子文件夹(URI)中,例如:example.com/payment/ example.com/cms/

我遇到路线问题.我配置了一个nginx webserver作为反向代理.它按预期交付第一页.

但是一旦我点击任何东西,而不是转到/ cms/Application/index,它会链接回/ Application/index(没有/ cms /).

恕我直言我相信我需要在所有路径上更改我的路由文件,hardcoding/cms /,但这似乎是一个糟糕的方法,因为如果我需要在另一个URI上部署APP,我将需要再次更改路由.

在同一主机名上部署两个应用程序的最佳方法是什么?

----- nginx.conf -----
...
...
...

    location /cms {
      proxy_pass      http://localhost:9001/;

      proxy_redirect          off;
      proxy_set_header        Host            $host;
      proxy_set_header        X-Real-IP       $remote_addr;
      proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    }

    location /payment {
      proxy_pass      http://localhost:9002/;

      proxy_redirect          off;
      proxy_set_header        Host            $host;
      proxy_set_header        X-Real-IP       $remote_addr;
      proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
    }

...
...
...
----- nginx.conf -----
Run Code Online (Sandbox Code Playgroud)

deployment nginx playframework

6
推荐指数
1
解决办法
1537
查看次数

如何使用Apache Spark 1.4.0数据框提取复杂的JSON结构

我正在使用新的Apache Spark版本1.4.0数据帧API从Twitter的状态JSON中提取信息,主要集中在实体对象上 - 此问题的相关部分如下所示:

{
  ...
  ...
  "entities": {
    "hashtags": [],
    "trends": [],
    "urls": [],
    "user_mentions": [
      {
        "screen_name": "linobocchini",
        "name": "Lino Bocchini",
        "id": 187356243,
        "id_str": "187356243",
        "indices": [ 3, 16 ]
      },
      {
        "screen_name": "jeanwyllys_real",
        "name": "Jean Wyllys",
        "id": 111123176,
        "id_str": "111123176",
        "indices": [ 79, 95 ]
      }
    ],
    "symbols": []
  },
  ...
  ...
}
Run Code Online (Sandbox Code Playgroud)

对于如何从基元类型作为提取信息的几个例子string,integer等等-但我无法找到如何处理这些类型的任何复杂的结构.

我尝试了下面的代码,但它仍然无法正常工作,它会引发异常

val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc)

val tweets = sqlContext.read.json("tweets.json")

// this function is …
Run Code Online (Sandbox Code Playgroud)

apache-spark apache-spark-sql

6
推荐指数
1
解决办法
3148
查看次数