我目前正在开发一个从一个巨大的文本文件中提取某些字母的类,我似乎无法为它找到一个合适的模式来追踪我想要的东西。 我正在使用的模式是:
Pattern p = Pattern.compile("'[A-Z ]'|'[.]'");
在搜索类似这样的内容时:('L','O','','B','我') ,我的Matcher返回'L''O''B'I'(我用它来存储StringBuilder中的每个匹配),但不返回空格,我需要它。
我为任何演示文稿缺陷道歉,但我仍然习惯于在这里提问。
编辑: 我想要的是获得填字游戏的答案。我有一个类从填字游戏中获取代码并将其保存在文本文件中。之后,我想运行此代码以获得答案,其组织方式如下:
L[0] = new Array('S','O','L','O','M','I','L','L','O','','B','I','B','L','I','O','','C','A','O');
L[1] = new Array('A','R','T','R','O','S','E','','D','I','N','A','M','I','T','E','','E','U','');
L[2] = new Array('R','C','P','','R','I','C','A','','','','','','','','','','','','');
L[3] = new Array('R','A','','','A','S','A','','A','N','O','R','M','L','','P','U','T','I','N');
L[4] = new Array('O','','','','T','','','','','','','','','','','','','','','');
L[5] = new Array('','','','','O','','','','','','','','','','','','','','','');
我需要空格以便将一个答案与另一个答案分开,目前我的课程返回的输出是
SOLOMILLOBIBLIOCAOARTROSEDINAMITEEURCPRICARAASAANORMLPUTINOTO`
删除所有额外的不需要的符号后。 我需要它返回的是:
SOLOMILLO BIBLIO CAO ARTROSE DINAMITE EU RCP RICA RA ASA ANORML PUTIN O T O
答案 0 :(得分:1)
你可以
''
替换为' '
(内置空格)`'
(包括空格)包围的所有字符添加到StringBuilder(您似乎已经有了这一步,'([A-Z ])'
也应该没问题。 replaceAll("\\s{2,}"," ")
可能很有用)。如果您还要为每行的结果添加空格,请考虑分别解析每一行,并在每个解析后的行之后添加空格。
<强> Demo 强>
答案 1 :(得分:0)
似乎你对你想要寻找的东西感到有点困惑。一方面,您想要寻找A-Z或空间。另一方面,您希望查找任何字符。你的第二部分包括第一部分。您可以使用以下内容来获取您的目标:
Pattern p = Pattern.compile("'.*?'");