1
import java.io.*;
import java.text.DecimalFormat;
import java.text.NumberFormat;

public class TrimTest{
public static void main(String args[]) throws IOException{
String[] token = new String[0];
String opcode;
String strLine="";
String str="";
    try{
        // Open and read the file
        FileInputStream fstream = new FileInputStream("a.txt");

        BufferedReader br = new BufferedReader(new InputStreamReader(fstream));

        //Read file line by line and storing data in the form of tokens
        if((strLine = br.readLine()) != null){
            token = strLine.split(" ");// split w.r.t spaces 
                            token = strLine.split(" "||",")   // split if there is a space or comma encountered
            }
        in.close();//Close the input stream
    }
    catch (Exception e){//Catch exception if any
        System.err.println("Error: " + e.getMessage());
    }
    int i;
    int n = token.length;
    for(i=0;i<n;i++){
        System.out.println(token[i]);
        }
}
}

入力MOVE R1、R2、R3がスペースまたはコンマに関して分割され、それを配列token []に保存する場合、次のように出力したい:MOVE R1 R2 R3

前もって感謝します。

4

3 に答える 3

1

試してみてくださいtoken = strLine.split(" |,")

split引数として正規表現を使用しor、正規表現では|. which is equal toおよび= 任意の空白 (通常のスペース、タブ、改行記号など) OR コンマ"を意味するような文字クラスを使用することもできます。[\\s,]\\s|,\\s

于 2013-03-28T19:27:50.510 に答える
0

に変更するかstrLine.split(" |,")、場合によってはstrLine.split("\\s+|,").

于 2013-03-28T19:28:34.477 に答える
0

あなたがしたい

token = strLine.split("[ ,]"); // split if there is a space or comma encountered

角括弧は文字クラスを表します。このクラスにはスペースとコンマが含まれており、正規表現は文字クラスの任意の文字に一致します。

于 2013-03-28T19:27:40.977 に答える