【发布时间】:2018-07-13 08:02:56
【问题描述】:
我在输入文件中有一行。 安排如下(示例):
(space)MOV(space)A,(space)(space)#20
当计算机正在读取这一行时,我打算将这个字符串拆分()并添加到数组中。我为此使用以下代码:
while((nline = bufreader.readLine()) != null)
{
String[] array = nline.split("[ ,]");
换句话说,字符串用分隔符分隔:(空格)和(逗号)。所以,我希望我的数组长度为 3。但实际上我得到 6。
因此,据我了解,计算机创建了 {"(space)", "MOV", "(space)", "A", "(space)", "(space)", "#20"} 数组。但是,我需要这个数组:{"MOV", "A", "#20"}
我怎样才能得到这个?或者如何根据上述分隔符拆分数组。 (我想nline.split("[ ,]") 是不正确的)。
【问题讨论】:
-
我会使用正则表达式直接抓取数据。
-
逗号之间好像有多个空格。您可以拆分
,然后trim每个结果以删除额外的前导和尾随空格。 -
@BeybarsMusagaliyev 我编辑了我的答案以使其涵盖您对问题的所有期望。