Javaで空白文字を区切り文字として文字列を分割する方法
JavaのStringクラスが提供するsplit()メソッドを使うと、指定した区切り文字(デリミタ)を基準に、現在の文字列をより小さな文字列に分割し、その結果を配列として取得できます。もし文字列内に指定した区切り文字が存在しない場合、このメソッドは元の文字列全体を唯一の要素とする配列を返します。
空白文字を区切り文字として文字列を分割する手順
空白文字を区切り文字として、文字列を配列に分割するには、以下の手順を実行します。
- 対象となるソース文字列を読み込む。
- split()メソッドを呼び出し、引数として半角スペース「 」を渡す。
- 結果の配列を出力する。
サンプルコード
次のJavaプログラムは、ファイルの内容を読み込んで文字列に格納し、split()メソッドを使って空白文字を区切り文字として分割する例です。
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Arrays;
import java.util.Scanner;
public class SplitExample {
public static void main(String args[]) throws FileNotFoundException {
Scanner sc = new Scanner(new File("D:\\sample.txt"));
StringBuffer sb = new StringBuffer();
String input = new String();
while (sc.hasNextLine()) {
input = sc.nextLine();
sb.append(input);
}
String source = sb.toString();
String result[] = source.split(" ");
for(int i = 0; i < result.length; i++) {
System.out.println(result[i]);
}
}
}実行結果
Hello how are you
補足:正規表現を使ったより柔軟な分割
split()メソッドの引数は正規表現として扱われるため、「\\s+」を渡すことで、半角スペースだけでなくタブや連続した空白など、あらゆる空白文字に対応できます。テキストデータの前処理では、こちらの方が実用的なケースも多いでしょう。
-
JavaとSelenium WebDriverで認証ポップアップを処理する方法
Selenium WebDriverを使用すると、Basic認証のポップアップ(認証ダイアログ)を簡単に処理できます。その方法は、ユーザー認証情報をURLに直接埋め込むというものです。具体的には、URLの中にユーザー名とパスワードを含めることで、認証ポップアップを自動的に通過できます。基本構文認証情報を含むURLは以下の形式で記述します。https://username:password@URL実際の例を見てみましょう。https://admin:admin@the-internet.herokuapp.com/basic_authadmin(1つ目):ユーザー名admin(2つ目):パスワー
-
JavaとOpenCVで画像を回転させる方法をわかりやすく解説
JavaでOpenCVを使って画像を回転させたい場合、ImgprocクラスのwarpAffine()メソッドを使用します。このメソッドは、指定された画像にアフィン変換(平行移動・回転・拡大縮小などの線形変換)を適用するためのものです。warpAffine()メソッドのパラメータwarpAffine()メソッドは、以下の引数を受け取ります。変換元の画像(src)、変換先の画像(dst)、変換行列(M)を表す3つのMatオブジェクト出力画像のサイズを表す整数値(Sizeオブジェクト)画像を回転させる手順画像を回転させるには、まずgetRotationMatrix2D()メソッドを使って回転行列を作