Java正则表达式在x个字符内查找匹配项

时间:2011-08-26 23:53:12

标签: java regex

我一直把头发拉过来,我知道这是一个简单的解决方案,此刻似乎让我无法摆脱。

我正在尝试使用正则表达式(客户端,仅限字符类)执行匹配,该代码将匹配“男性”的20个空格(任何字符)中的“查找”。 我不关心字符或空格是什么,如果两个单词/短语的间隔超过20个字符,则一定不能找到匹配。

我有代码设置来匹配我只需要知道如何设置距离搜索参数的短语。 “只有匹配男性,如果他们在彼此的零到二十个字符之内。

2 个答案:

答案 0 :(得分:0)

(?i).*looking for.{0,20}male.*

(?i)标志只是“忽略大小写”。

修改: 提出建议:

Pattern.compile("(?is).*\\blooking for\\b.{0,20}\\bman\\b.*");

答案 1 :(得分:0)

也许你不应该拔掉头发,而是先从问题的根源开始?我的意思是你不能写你的代码/应用程序更符合逻辑,所以你不需要做甚至更奇怪的距离匹配这样奇怪的字符串搜索?