JSP의 String Method
오늘은 String Method에 대해서 알아보았다. 다 다룬것은 아니지만 대표적으로 자주 쓰이고 유용한것들을 위주로 살펴보았다. 정리하면서 하나하나 다시 짚어 나가보겠다.
오늘 다룬 String Method들은
- substr()
- substring()
- slice()
- length
- replace()
- replaceAll()
- trim()
- charAt()
- split()
을 다루었다. 이를 버튼형으로 생성시켜 String 문자열에 대한 작동들을 하나하나 알아봤다.
먼저 Button을 여러개 생성해주었다. 나는 이 Button들에게 각각의 함수(function)를 부여하고, 눌렀을때 그 함수를 동작시키는 방식으로 진행하겠다.
See the Pen Untitled by codeJo (@yatong) on CodePen.
Function은 함수이다. 자주 사용되는 코드를 이름붙여 정의한 객체 라고 볼수 있다. 특정 작업을 처리하는 코드를 정의해두면 필요할때 해당 함수만 호출하여 사용할수 있다. Java에서 Method와 비슷한 기능이다.
보통은
호출하기 전에 정의
되어야한다. 따라서 <head> 태그에 작성하는것이 일반적 이라고 한다. 하지만 지금 작성된 코드는 수업시간에 작성했던 내용들을 복습하는 내용이라 <body> 태그에 몰아서 선언을 해두었다.
각 function은 해당 기능의 이름을 따와서 붙여주었다. 이제 JSP에서 String 클래스에 대한 설명을 해보겠다.
먼저 substr(Startindex, length)는 Startindex에서 부터 시작해서 length의 길이만큼 문자열을 추출한다.
그리고 뒤에 length를 생략가능한데 생략하면 Startindex에서부터 끝까지 모든 문자열을 추출한다.
slice와 substring은 기능적인 면에서 결이 비슷하다.
slice(start, end) - start 인덱스 위치에서 end위치까지 부분 문자열을 추출한다. 음수 지정으로 끝에서부터의 문자열 위치를 지정할수 있다
substring(from, to)는 from과 to 두 위치 사이의 부분 문자열을 추출한다. to를 생략하면 뒤쪽 모든 문자열을 추출한다.
크게 slice는 음수 지원, substring은 음수지원X 의 차이가 있다.
length는 해당 문자열의 길이를 반환한다. 문자열의 전체 길이를 구하는데 1부터 시작하고, index는 0부터 시작하니
배열타입에 이용해주려면 length로 길이를 구하고 -1씩 계산해주면 된다.
replace(oldtext, newtext)와 replaceAll(oldtext, newtext)는 기존 문자열을 새로운 문자열로 대체한다
replace와 replaceAll의 차이점은 replace는 중복되는 텍스트가 여러개일때 첫번째 텍스트만 변경하고
replaceAll은 일치하는 텍스트 전부를 변환한다.
trim()은 문자열 앞 뒤의 공백을 전부 제거한다.
charAt(index)는 해당 인덱스의 문자를 구한다. index가 문자열의 범위를 벗어나거나, 없는 문자열이면 빈 문자열이 리턴된다.
split(구분자, limit)는 구분자로 구분된 문자열을 분리하여 배열타입으로 리턴한다. limit은 생략 가능한데 입력하면 최대 몇개까지 리턴할것인가를 지정한다.
indexOf(찾을문자열)은 문자열을 찾아서 해당 length를 반환한다. 대소문자에 민감하고, 찾을 문자열이 없다면 -1을 리턴한다. 따라서 -1이거나 아닌 if문을 이용하여 다양하게 쓰임새가 있을수 있다.
거론된 함수 말고도 다른 String 함수도 많이 있다. 하지만 이를 다 다룰수도 없고 머리에 외우기도 힘들다.
주로 사용하는것들은 외워두면 좋고, 그외 간헐적으로 사용되는 함수는 구글링을 이용하여 적재적소에 이용해주면 좋다.
'Study > 중앙정보처리학원과정' 카테고리의 다른 글
40일차(2). Request SendRedirect와 <JSP:forward와 param> (1) | 2022.12.24 |
---|---|
40일차(1). Request SendRedirect와 <JSP:forward와 param> (0) | 2022.12.23 |
38일차. JSP Output, 변수선언(variable) (0) | 2022.12.18 |
37일차. JSP getParameterValues, getParameterNames, getParameterMap (0) | 2022.12.15 |
36일차. HTML Form 태그와 input 그리고 JSP (0) | 2022.12.14 |