针对一个地址有效地检查多个IP地址

时间:2017-02-23 09:19:48

标签: java regex performance

我有一个IP地址列表作为字符串,以及一个字符串格式的地址来检查agianst这些地址。我的目标是找出我的地址是否在列表中。为了使这种情况变得困难,这些ip地址不是完整的地址,而是正则表达式。例如10 \ 0.25 \ 0.3
在单个String上运行数百个正则表达式模式的最有效方法是什么?管道他们?搜索树?一个可以帮助我的特定java容器? 你有什么建议吗?

编辑: 我可以在处理之前将地址列表转换并存储到任何地方,这无关紧要。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用this library(它最初是RIPE whois服务器的一部分)来快速找到匹配项。它使您可以构建范围树并以极其有效的方式导航树。

示例:

const AddMock = () => {
  return (
    <div className="row">
      <Accordion style={{ paddingLeft: "32px" }}>
        <Card className="collapseStyle">
          <Card.Header>
            <Accordion.Toggle as={Button} variant="link" eventKey="0">
              Add Mock
            </Accordion.Toggle>
          </Card.Header>
          <Accordion.Collapse eventKey="0">
            <Card.Body>
              <Container className="mockbody">
                <Header as="h3">Hierarchy</Header>
                <TabContent />
              </Container>
            </Card.Body>
          </Accordion.Collapse>
        </Card>
      </Accordion>
    </div>
  );
};