【发布时间】:2012-11-15 12:02:01
【问题描述】:
我正在使用ConstantScoreRangeQuery 搜索范围为0.0.0.0 到255.255.255.255 的所有IP 地址。这几乎是在搜索所有 IPv4 地址。
我正在将我的所有 IP 地址转换为字符串并将它们编入索引。例如,0.0.0.0 变为 00000000,255.255.255.255 变为 ffffffff,其中每 2 个字符为一个八位字节。
当我搜索 IP 地址时,我正在创建如下查询:
ConstantScoreRangeQuery(fldIdStr, "00000000", "ffffffff", true, true)
我同时存储 IPv4 和 IPv6。此查询也返回 IPv6。
我正在使用 Lucene (lucene-core-2.4.0.jar) 2.4.0;
我怎样才能只获得一个 IP 范围内的 IPv4 地址。
【问题讨论】: