-
Regular Expression 정규표현식(4) Java Pattern, Matcher Class개발입문/JAVA 2017. 9. 24. 12:35
Java RegEx 매칭활용 Pattern : Regex 패턴을 컴파일한 Pattern 객체Matcher: Regex Pattern 이 인자 InputSource 에 포함되었는지 확인할 수 있는 Matcher 객체InputSource: Regex Pattern 을 찾을 대상이 되는 본문 다음 코드를 음미하고. 한 구문식 분리해서 해석하면. Java Regex 활용 기본 끝! import java.io.Console; import java.util.regex.Pattern; import java.util.regex.Matcher; public class RegexTestHarness { public static void main(String[] args){ Console console = System.co..
-
Regular Expression 정규표현식(3) Capturing Group and Boundarys Matchers개발입문/JAVA 2017. 9. 24. 12:03
Capturing Groups수학에서 ( ) 괄호로 감싸진 것은 먼저 계산해야하는 것처럼 정규표현식에서 ( ) 로 감싸진 것은 한 계산단위 unit 으로 인식합니다. Quantifier 적용도 이 ( ) 단위로 적용한다. ((A)(B(C))) 의 경우 다음 순으로 연산합니다. ) 를 만난 순이라고 생각하면 쉬워요.((A)(B(C))) (A) --> (C) --> (B(C)) --> ((A)(B(C))) Back References\ backslash 로 표현됩니다. (\d\d)\1 는 (\d\d) 두 숫자가 \1 :1번 더 반복된다는 뜻! Enter your regex: (\d\d)\1 Enter input string to search: 1212 I found the text "1212" startin..
-
Regular Expression 정규표현식(2) Quantifiers개발입문/JAVA 2017. 9. 24. 11:55
QuantifierQuantifier는 수량을 나타내는 기호입니다. RegEx 표현이 얼마나 반복되는지를 의미합니다. Occurance (0회, 1회, 2+회...) 한 글자 Character, 한글자를 나타내는 규칙인 Character Class, 글자모음 Capturing Groups 에 대해 모두 적용 가능합니다. a?, a*, a+면 a{n,m} 이면 a가... (dog)?, (dog)*, (dog)+, (dog){n,m} 이면 dog 가 ? 은 안나오거나 하나 나오거나* 는 모두다! 안나오거나, 하나/여러개 나오거나+ 하나는 꼭 있는데 더나오는 것 같기도..{n, m} n개부터 m개까지 GreedyReluctantPossessiveMeaningX?X??X?+X, once or not at all..
-
Regular Expression 정규표현식(1) Character개발입문/JAVA 2017. 9. 19. 23:46
이 포스트는 Character 하나 하나를 표기하는 방법에 대해 정리합니다.여기서 Character 는 글자, 숫자, 공백 모두를 포함합니다. 컴퓨터(컴파일러) 는 String 문자열을 char [] 로 인식합니다.즉, 우리도 글자마다의 조합으로 패턴을 구성해야 합니다. Meta Character특별한 뜻 (정해진 규칙) 을 가지는 캐릭터 들입니다.만약 정해진 규칙을 escape 하려면 \ 를 앞에 붙이거나, \Q ... \E 로 감싸야 한다.- 괄호 - 특수문자 ^ - = $ ! | ? * + . Character Class[ ] 안의 규칙은 모두 한 글자에 대한 규칙을 명세한다. 요 규칙들을 클래스라고 지칭합니다. (a.class 아니고!) [논리연산자]집합을 생각하면 쉬운..
-
정규표현식 Regular Expression개발입문/JAVA 2017. 9. 19. 22:36
정규표현식 Regular Expression : REGEX 정규표현식은 한번 익히면 여러 언어에서 보편적으로 이용됩니다. (문법이 살짝 다르지만 그건 쓸때 찾아보면 되는 수준이라니까~)자잘한 규칙이 많지만 정리하면 편한 정규표현식! 매번 사용하는 패턴만 익혔었는데, 사용 안하니까 잊어버리곤 했죠...; 아예 이번 기회에 맘먹고 정리하려고 합니다. 정규표현식은 이럴 때 사용합니다.CMD 에서 파일을 검색할 때, 서비스에서 입력값이 유효한지를 확인할 때 DB 에서 특정 패턴에 맞추어서 문자열 치환이 필요할 때 엑셀 서식처럼 통화(천의자리 , $ 붙이기 등)의 표현방식을 다룰 때웹도 앱도 DB도 사실 방대한 "데이터"를 처리해야하는데요. 데이터를 검색하고 처리하는 데에 정규표현식은 꼭 넘어야할 산입니다. 포스..
-
Java Locale 처리개발입문/JAVA 2017. 9. 14. 23:55
HackerRank Java Java Currency Formatter > https://www.hackerrank.com/challenges/java-currency-formatter 1. NumberFormat class 코드는 로컬 관습이나 환경과 독립적으로 구현하고 NumberFormat 클래스가 로컬라이제이션을 위한 숫자 포맷, 파싱 기능을 제공한다. >> 즉, 코드는 로컬라이제이션에 대해 크게 신경을 안 써도 된다는 얘기!!!NumberFormat helps you to format and parse numbers for any locale. Your code can be completely independent of the locale conventions for decimal points,..
-
Wrapper Class 래퍼클래스개발입문/JAVA 2017. 9. 12. 00:31
1. Error 발견 Solution.java:18: error: int cannot be dereferenced int n = in .nextInt(); String s = n.toString();- reference: 참조, 포인터 자체 - dereference: 포인터가 가리키는 값 (Value) int 는 값 자체이기 때문에 포인터라는 개념이 없어서 포인터 연산 할 수 없다 cannot be dereferenced 에러를 뱉어내고 있다. 2. Primitive DataType 과 Objectint 는 primitive DataType Integer 는 Object 로, 힙에 인스턴스화할 수 있다.int ---- IntegerInteger 와 같은 것을 "Wrapper Class" 라고 한다.int..
-
Numeric Datatype개발입문/JAVA 2017. 9. 10. 13:29
DataTypebyte, short, int, long 그리고 Precision Java Datatype> https://www.hackerrank.com/challenges/java-datatypes?h_r=next-challenge&h_v=zen A byte is an 8-bit signed integer. - 2^7 ~ 2^7-1A short is a 16-bit signed integer. - 2^15 ~ 2^15-1An int is a 32-bit signed integer. - 2^31 ~ 2^31-1A long is a 64-bit signed integer. - 2^63 ~ 2^63-1 첫자리는 부호 + 다음자리부터 Bit 0 or 1이걸 가지고 한참을 헤매다니...