17

助けが必要です。

line.split("*");

このコード行を使用して、文字列をアスタリスク マークに分割しました。ただし、コンパイラからエラーが発生しました。「無効な正規表現: ぶら下がっているメタ文字 '*'」と表示されます

この問題を解決するにはどうすればよいですか? 前もって感謝します。

4

5 に答える 5

37

*正規表現では特別な意味があります。あなたはそれを逃れなければなりません。

line.split("\\*");
于 2013-03-19T05:51:04.930 に答える
2

*は正規表現のメタ文字です。0個以上の要素を照合するために使用されます。*を特殊文字としてではなく通常の文字として使用する場合(つまり、メタ文字としての動作をスキップする場合)、その前にエスケープ文字を追加します。

例えば:String[] split = line.split("\\*");

お役に立てれば。

于 2013-03-19T06:00:46.407 に答える
2

次のステートメントを試してください。

line.split("\\*");
于 2013-03-19T05:52:17.437 に答える
2

これは、正規表現である「*」を使用したためです。この文字を使用したい場合は、次のように入力する必要があります:

line.split("\\*");
于 2013-03-19T05:54:59.043 に答える