2017-07-10 8 views
0

正規表現から以下のようにキャプチャします。Javaの正規表現:スラッシュを分割した新しい行

/

--// 

またはそれができる

- //私が試した

public static final String DELIMITER = "/\\n--//|-//"; 

ddl.addAll(..).split(DELIMITER))); 

との組み合わせが、何も作業。 私はWindowsで使用しています

+0

どのOSを使用していますか? Windowsの改行が問題なのかもしれない。 Windowsは改行に '\ r \ n'を使います。 'System.getProperty(" line.separator ")'を使って改行 "文字"を見つけることもできます。 – JustABit

+0

私はWindowsを使用しています..私は上記の質問を更新しました。 – ShaanGreat

+0

1番目:あなたは " - または" - とすることができます - あなたの正規表現は " - //"で終わります - それは2つではなく1つのマイナスです。 2番目: 'ddl.addAll(..)'の結果は何ですか?第3回: '\\ n'を' \\ r \\ n'や 'System.getProperty(" line.separator ")'に変更しようとしましたか?@JustABitは提案されていますか? – Alexander

答えて

0

あなたはそれほどエスケープする必要はありません。区切り文字に2番目の改行がありません:

String newline = System.getProperty("line.separator"); 
String text = "before" + "/" + newline + newline + "--//" + "after"; 
System.out.println(text); 

String delimiter = "/" + newline + newline + "--//"; 
String[] parts = text.split(delimiter); 
System.out.println(parts[0]); // prints "before" 
System.out.println(parts[1]); // prints "after" 
+0

ありがとうJustABit !! あなたが提案したように、私は以下のように動作するようにabltを更新しました。再度、感謝します! 文字列の改行= System.getProperty( "line.separator"); 文字列string1 = "/" +改行+ " - //"; 文字列string2 = " - //"; 最終文字列DELIMITER = string1 + "|" + string2; System.out.println( "DELIMITER:" + DELIMITER); – ShaanGreat

+0

よろしくお願いします!お役に立てて嬉しいです。チェックマークの記号をクリックして、私の答えを正しい答えとして受け入れることはできますか? – JustABit

関連する問題