2013-10-09 51 views
0

我想要搜索Lotus Notes中收件箱中邮件正文中存在的任何IP地址。 我假设在搜索时应该使用一些带有通配符的正则表达式。在Lotus Notes邮件客户端中搜索IP地址

感谢任何帮助。

+0

你已经试过了什么? – pstr

+0

嗯,我试过“*。*。*。*”,“*。*”,“^(([0-9] | [1-9] [0-9] | 1 [0-9] {2 } | 2 [0-4] [0-9] | 25 [0-5])\){3}([0-9] |。[1-9] [0-9] | 1 [0-9 ] {2} | 2 [0-4] [0-9] | 25 [0-5])$“没有结果 – Jaques

+1

显示你的代码,而不仅仅是正则表达式。 –

回答

1

在Lotus Notes中至少有两个^ H^H^Hthree类似正则表达式的引擎,并且它们都没有接近像普通POSIX工具那样强大。具体来说,你不能在其中任何一个中使用像[0-9]{1,3}(1-3位数字)的结构。

  • LotusScript like operator:在LotusScript中的字符串上操作。比@Matches功能较弱,例如,您不能表达类似的任何数量的Bs
  • 方程式语言@Matches功能:稍微强大一些,例如你可以使用分离和连接。
  • 公式语言@Like函数。其中最简单的 - 基本上与单个和多个字符的通配符匹配。

为了解决您的具体问题(假设你想在身体,包含IP地址的所有文档视图),我会使用@Match写匹配+{0-9}{0-9}.+{0-9}{0-9}.+{0-9}{0-9}.+{0-9}{0-9}的模式 - 它的要求放宽到匹配由点分隔的四组数字。这将匹配ip地址,但也像12345.12151315.141241.1421序列。

1

Lotus Notes Client中没有“开箱即用”的正则表达式搜索。 Notes全文搜索不支持搜索例如IP地址,不幸的。

你将不得不写一个代理。

最简单的将是一个Java代理读取的文本仅每隔(选择)文档作为一个字符串,并测试其IP项目Body地址使用java.util.regex.Matcher一部分。看看谷歌的“正则表达式IP地址Java”,你会发现很多很好的示例代码。

您也可以编写一个LotusScript代理。首先是example

@Like@matches和运营商不允许你准确地找到IP地址,那么,为什么,因为它可能不使用正则表达式。