Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 复杂文本解析-请帮助解决_Java_Regex_Groovy - Fatal编程技术网

Java 复杂文本解析-请帮助解决

Java 复杂文本解析-请帮助解决,java,regex,groovy,Java,Regex,Groovy,我的算法设计相当差,有一个复杂的问题-请看一看。我目前在Java/Groovy中工作 我有一些文字看起来像这样: AAAAA AAAAA CCCCC any stuff here 111 any stuff here AAAAA stuff AAAAA stuff AAAAA BBBBB stuff 222 stuff BBBBB /(\w{8}|\w{11}).*?(\w{3}).*?\1/ 我的挑战是获取所有AAAAAA格式

我的算法设计相当差,有一个复杂的问题-请看一看。我目前在Java/Groovy中工作

我有一些文字看起来像这样:

AAAAA  
AAAAA
CCCCC
any stuff here  
111  
any stuff here  
AAAAA  
stuff  
AAAAA  
stuff  
AAAAA  

BBBBB  
stuff  
222  
stuff  
BBBBB   
/(\w{8}|\w{11}).*?(\w{3}).*?\1/  
我的挑战是获取所有AAAAAA格式的字符串,而不获取任何周围的文本。您可以看到字符串中有多个AAAAA,但我必须只获取最接近111s和222s的AAAAA,然后对所有此类字符串执行此操作

我的正则表达式(不工作)如下所示:

AAAAA  
AAAAA
CCCCC
any stuff here  
111  
any stuff here  
AAAAA  
stuff  
AAAAA  
stuff  
AAAAA  

BBBBB  
stuff  
222  
stuff  
BBBBB   
/(\w{8}|\w{11}).*?(\w{3}).*?\1/  
我一直在和他们玩,他们要么抓取太多的文字,要么表演得太慢。。。如果有人知道我应该用什么来解决这类问题,请告诉我

编辑:以下是我试图匹配的内容:

AAAAA
CCCCC
any stuff here  
111  
any stuff here  
AAAAA  

我认为这与解析标记不正确的XML非常相似。 无论如何,谢谢您的关注。

使用正则表达式模式

(?s)\b(\w{5})\b(?:(?!\1).)*?\b\w{3}\b(?:(?!\1).)*?\1

请更清楚地告诉我们您希望匹配示例输入的哪些部分好吗?请给出一些示例输出,以确保清晰。感谢您的输入,我在原始帖子中添加了示例。@Chris-Regex,顾名思义,用于匹配/形成正则表达式,而不是检测匹配的接近程度。你混淆了两种完全不同的东西。在现实世界中,
AAAAA
BBBBB
111
222
可以是什么?给我们展示一些真实的例子,不要胡说八道。。。。