본문 바로가기

기타3

정규표현식 전방탐색과 후방탐색 정규표현식 전방탐색과 후방탐색 프로그래머스 문제를 풀던 중 전화번호 뒷 4자리를 제외한 나머지를 *로 치환하는 문제를 접하게 되었습니다. 예전에 정규표현식 책에서 본 전방탐색을 이용해서 풀면 되겠다는 생각을 했지만 문법이 기억나지 않아서 전방탐색을 찾아본 후 문제를 풀 수 있었습니다. 전방탐색과 후방탐색에 대해 알아본 것을 간단하게 정리하겠습니다.(언어는 자바를 사용했습니다.) 전방탐색 패턴에 일치하는 텍스트 자체는 소비하지 않고, 일치하는 텍스트의 앞 부분을 탐색합니다. 패턴의 구문은 ?= 를 사용합니다. String addr1 = "http://www.example.example"; String addr2 = "https://www.example.example"; String addr3 = "mail.. 2021. 9. 15.
[gradle] 오프라인 상태에서 no cached version available for offline mode 문제해결 오프라인 상태에서 no cached version available for offline mode 문제해결 현재 파견나와서 근무하고 있는곳은 폐쇄망을 사용하기 때문에 외부에서 gradle을 이용해 라이브러리를 가져올 수 없다. 그래서 필요한 라이브러리들이 포함된 폴더(modules-2)를 반입한 후, GRADLE_USER_HOME을 설정하고 caches 폴더에 modules-2 폴더를 넣었는데 프로젝트에서 라이브러리를 받아올 수 없었다. 이것저것 해보다가 해결할 수 없어서 인터넷을 검색해보니 다음과 같은 글을 발견하게 되었다. https://discuss.gradle.org/t/copying-the-gradle-cache-to-another-machine/7546 이 글을 읽다보니 다음과 같은 답변을 찾.. 2020. 4. 13.
정규표현식 \b와 \B \b 단어 경계에 대응한다. \w( [A-Za-z0-9_] )와 그 외의 문자사이의 경계에 대응한다. y n은 \w와 그 외의 문자 사이의 경계에 대응된다. (y와 n은 \w, 공백은 \w 외의 문자) -_-도 마찬가지로 \w와 그 외의 문자 사이의 경계에 대응 (-은 \w외의 문자, _는 \w) \B 단어 경계가 아닌 부분에 대응된다. \w는 \w와의 경계와, \w가 아닌것은 \w가 아닌것의 경계와 대응한다. 첫 번째, AA의 경우 앞도 \w, 뒤도 \w이므로 대응된다. 두 번째, BB의 경우도 AA와 같다. 세 번째, B 의 경우 B의 앞은 \w, 공백의 경우 뒤는 \w외의 문자(느낌표)이므로 일치 네 번째, @A의 경우 @의 앞 !는 \w외의 문자, A의 뒤 B는 \w이므로 일치 2019. 10. 5.