Notice
Recent Posts
Recent Comments
Link
SeouliteLab
[Java/자바] 문자열의 단어 개수 가져오는 방법 본문
문자열에서 단어의 개수를 가져오는 작업은 자바 프로그래밍에서 매우 흔한 작업 중 하나입니다. 이를 위해 다양한 방법이 존재합니다. 아래에서는 여러 예제를 통해 각각의 방법을 살펴보겠습니다.
예제 1: StringTokenizer 사용
import java.util.StringTokenizer;
public class WordCountExample {
public static void main(String[] args) {
String sentence = "Hello World, Java Programming is fun!";
StringTokenizer tokenizer = new StringTokenizer(sentence);
int wordCount = tokenizer.countTokens();
System.out.println("단어 개수: " + wordCount);
}
}
위 예제는 StringTokenizer를 사용하여 문자열에서 단어 개수를 가져오는 방법을 보여줍니다. StringTokenizer는 문자열을 특정 구분자를 기준으로 토큰으로 나누는 데 사용됩니다.
예제 2: split 메서드 사용
public class WordCountExample {
public static void main(String[] args) {
String sentence = "Hello World, Java Programming is fun!";
String[] words = sentence.split("\\s+");
int wordCount = words.length;
System.out.println("단어 개수: " + wordCount);
}
}
split 메서드를 사용하여 문자열을 공백을 기준으로 나누고, 배열의 길이를 통해 단어 개수를 계산합니다.
예제 3: 정규식 사용
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class WordCountExample {
public static void main(String[] args) {
String sentence = "Hello World, Java Programming is fun!";
Pattern pattern = Pattern.compile("\\b\\w+\\b");
Matcher matcher = pattern.matcher(sentence);
int wordCount = 0;
while (matcher.find()) {
wordCount++;
}
System.out.println("단어 개수: " + wordCount);
}
}
정규식을 사용하여 단어를 찾아 단어의 개수를 계산하는 방법입니다. "\\b\\w+\\b" 정규식은 단어를 찾는데 사용됩니다.
예제 4: Stream API 사용
import java.util.Arrays;
public class WordCountExample {
public static void main(String[] args) {
String sentence = "Hello World, Java Programming is fun!";
long wordCount = Arrays.stream(sentence.split("\\s+"))
.count();
System.out.println("단어 개수: " + wordCount);
}
}
Java 8부터 제공되는 Stream API를 사용하여 문자열을 공백을 기준으로 나눈 후 스트림의 개수를 세는 방법입니다.
예제 5: java.util.Scanner 사용
import java.util.Scanner;
public class WordCountExample {
public static void main(String[] args) {
String sentence = "Hello World, Java Programming is fun!";
Scanner scanner = new Scanner(sentence);
int wordCount = 0;
while (scanner.hasNext()) {
scanner.next();
wordCount++;
}
System.out.println("단어 개수: " + wordCount);
}
}
Scanner 클래스를 사용하여 문자열에서 단어를 읽어오고, 단어의 개수를 세는 방법입니다.
예제 6: Apache Commons Lang 라이브러리 사용
Apache Commons Lang 라이브러리의 WordUtils 클래스를 사용하여 단어의 개수를 가져오는 방법입니다. 이를 위해 프로젝트에 commons-lang 라이브러리를 추가해야 합니다.
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.text.WordUtils;
public class WordCountExample {
public static void main(String[] args) {
String sentence = "Hello World, Java Programming is fun!";
int wordCount = WordUtils.countWords(sentence);
System.out.println("단어 개수: " + wordCount);
}
}
'프로그래밍' 카테고리의 다른 글
[Java/자바] 배열을 Set(HashSet)으로 변환하기 (0) | 2024.03.07 |
---|---|
[Java/자바] 프로그램 1초마다 반복 실행하기 (0) | 2024.03.07 |
[Java/자바]Spring 프레임워크의 @Autowired이란? (0) | 2024.03.07 |
[Java/자바] 문자열 한 글자씩 자르기 (0) | 2024.03.07 |
[Java/자바] 문자열 첫번째 문자, 마지막 문자 확인 (0) | 2024.03.07 |