末尾/先頭のスペースや空の値を使用せずに String.split() を使用して文字列を分割するにはどうすればよいですか?
のような文字列があるとしましょう" ol-ga@assf-rrt.ru ; sdf.an@dfgdfg.com; sdfsdf@fdfd.erff, privet@vvv.fff "
。
以前は呼び出して分割していましたString.split("[;, ]+")
が、余分なループで無視する必要がある空の配列要素を取得するという欠点があります。
また、空の要素を与えず、最初の電子メールに先頭のスペースを残し、最後の電子メールに末尾のスペースを残すことも試しString.split("\\s*[;,]+\\s*")
ました。これらの電子メールの横にコンマやセミコロンがないため、結果の配列は次のようになります。
[0] = {java.lang.String@97}" ol-ga@assf-rrt.ru"
[1] = {java.lang.String@98}"sdf.an@dfgdfg.com"
[2] = {java.lang.String@99}"sdfsdf@fdfd.erff"
[3] = {java.lang.String@100}"privet@vvv.fff "
正規表現と分割のみを使用して (String.trim()) への追加の呼び出しを使用せずに、「クリーンな」電子メールの配列を取得することは可能ですか?
ありがとう!