-
자바 문자열 변환과 교체자바 JAVA 2020. 7. 29. 07:08
9.2.6 문자열의 변환, 교체 및 분할
String 클래스는 다음과 같이 문자열을 변환, 교환 및 분할하는 방법을 제공한다.
그림 9.7과 같다.
beginIndex <= endIndex>
문자열은 일단 생성되면 내용을 변경할 수 없다. LowerCase에 대한 메소드,
ToUpperCase, 트림, 교체, 교체우선 및 교체모두 새 문자열 반환
원본 문자열에서 파생됨(원래 문자열을 변경하지 않음!). ToLowerCase 및
ToUpperCase 메서드는 문자열의 모든 문자를 다음으로 변환하여 새 문자열을 반환함
소문자 또는 대문자 트리밍 메서드는 공백을 제거하여 새 문자열을 반환함
문자열의 양쪽 끝에서 나오는 문자 몇 가지 버전의 교체 방법이 제공됨
문자열의 문자 또는 하위 문자열을 새 문자 또는 새 하위 문자열로 교체하십시오.
예를 들어,
"Welcome"(웰컴). LowerCase()로 새 문자열을 반환하십시오.
"환영한다" ToUpperCase()가 새 문자열 WOMCHER를 반환한다.
"\t Good Night \n". 트림()은 새 문자열인 Good Night을 반환한다.
"환영한다" replace('e', 'A')는 새 문자열 WALcomA를 반환한다.
"환영한다" replaceFirst("e", "AB")는 새 문자열 WABlcome을 반환한다.
"환영한다" replace("e", "AB")가 새 문자열 WABlcom을 반환함AB.
"환영한다" replace("el", "AB")는 새 문자열 WABcome을 반환한다.
분할 방법을 사용하여 지정된 구분 기호를 가진 문자열에서 토큰을 추출할 수 있다.
예를 들어, 다음 코드
문자열[] 토큰 = "Java#HTML#Perl".split("#");
(int i = 0; i < 토큰.length; i++)
System.out.print(토큰[i] + ";
+replaceFirst(oldString: 문자열,
newString: 문자열: 끈
+replaceAll(oldString: 문자열,
newString: 문자열: 끈
+호텔(시그레이터: 문자열:
끈[]
모든 문자가 소문자로 변환된 새 문자열을 반환한다.
모든 문자가 대문자로 변환된 새 문자열을 반환한다.
공백 문자가 양쪽에 잘린 새 문자열을 반환한다.
이에서 일치하는 모든 문자를 대체하는 새 문자열 반환
새 문자에 줄을 매다
일치하는 첫 번째 하위 문자열을 대체하는 새 문자열을 반환함
새 변위줄이 달린 이 끈
이에서 일치하는 모든 하위 문자열을 대체하는 새 문자열 반환
새 지주를 달다
에 의해 분할된 하위 문자열로 구성된 문자열 배열을 반환함
구분 기호를 붙이다
그림 9.7 문자열 클래스는 문자열을 변환, 교체 및 분할하는 방법을 포함한다.
갈라지다
342 제9장 현악
9.2.7 패턴별 일치, 교체 및 분할
사용자 입력을 검증하는 코드(예: 입력의 유효성을 확인하는 코드)를 작성해야 하는 경우가 많음
숫자, 소문자가 모두 포함된 문자열 또는 사회 보장 번호 이걸 어떻게 쓰니?
암호의 종류? 이 과제를 수행하는 간단하고 효과적인 방법은 정규식을 사용하는 것이다.
정규식(약칭 regex)은 a를 일치시키기 위한 패턴을 설명하는 문자열이다.
현악기 한 벌 패턴을 지정하여 문자열을 일치시키거나 바꾸거나 분할할 수 있다. 이것은 an
매우 유용하고 강력한 기능
String 클래스의 일치 방법부터 시작합시다. 얼핏 보기엔 성냥이 있었다.
방법은 동등한 방법과 매우 유사하다. 예를 들어, 다음 두 개의 문장은
둘 다 사실대로 평가하다
"Java".matches("Java");
"Java".eqals("Java");
하지만 매치 방식이 더 강력하다. 고정된 문자열뿐만 아니라 a도 매칭할 수 있다.
문양을 따르는 현악기 예를 들어 다음 문장은 모두 참으로 평가한다.
"자바는 재미있다.".매치( )
"자바는 멋지다.".매치( )
"자바는 강력하다.".매치( )
앞의 문장에서의 자바*는 정규식이다. 그것은 다음과 같은 문자열 패턴을 설명한다.
자바와 0자 이상의 문자로 시작한다. 여기서, 하위 문자열은 어떤 것과도 일치한다.
0자 이상.
다음 진술은 사실로 평가된다.
"1998-02-4534".1907( )
여기서 \\d는 한 자릿수를 나타내고 \\d{3}는 세 자릿수를 나타낸다.
replaceAll, replaceFirst 및 split method를 일반 방법으로 사용할 수 있음
표현 예를 들어, 다음 명령문은 $, + 또는 #를 대체하는 새로운 문자열을 반환한다.
NNN 문자열로 a+b$#c.
문자열 s = "a+b$#c".replaceAll("[$+#]", "NNN";
System.out.println;
여기서 정규식 [$+#]은 $, + 또는 #와 일치하는 패턴을 지정한다. 그래서 생산량은
aNNNBNNC.
다음 문장은 문자열을 문장 부호로 구분된 문자열 배열로 분할한다.
흔적들
문자열[] 토큰 = "자바, C?C#,C++""split(",:;?"),
(int i = 0; i < 토큰.length; i++)
System.out.println(토큰스[i]);
이 예에서 정규식 [,:;?]은 , , , :, ;; 또는 or와 일치하는 패턴을 지정한다.
?. 이 각 문자는 문자열을 분할하기 위한 구분 기호 입니다. 따라서 끈은 로 갈라진다.
어레이 토큰에 저장된 Java, C, C#, C++.
규칙적인 표현 패턴은 초기 학생들이 이해하기에는 복잡하다. 이러한 이유로, 간단한 패턴이
에 도입된다.
'자바 JAVA' 카테고리의 다른 글
자바 GUI, 추상클래스에 대한 설명 (0) 2020.08.01 자바 트랜젝션, 클래스에 대한 이해 (0) 2020.08.01 자바 String Class (문자열 클래스 ) (0) 2020.07.29 자바 문자열 비교 (0) 2020.07.28 자바 데이터필드 캡슐화의 장점 (0) 2020.07.28