본문 바로가기

정규식5

[PHP] URI '/'(slash) 중복 처리 / preg_replace, 정규식 URI '/'(slash) 중복 처리 URI를 처리하다보면 또는 문자열 처리를 하다보면 '/' (slash)를 사용자(또는 동료 개발자)가 중복으로 입력하는 경우가 종종 생긴다. 실수 또는 string merge 등등의 경우에 경로 끝에 / 처리하고 붙이는 string 선두에 / 이 있다던지.. 어쨌든 중복된 / 를 정규식을 이용하여 없애려고 한다. 소스코드 결과 string(23) "//api////device//status" string(18) "/api/device/status" 정규패턴에서 나타내는 #//+# 은 # : escape character 를 있는 그대로 사용한다 라는 의미. /를 \/ 이렇게 표현하지 않아도 되도록.. + : multiple 이란 의미, {//, }과 같고 //, //.. 2022. 3. 4.
[PYTHON] 유효한 날짜 포맷 확인 / 정규식, re 유효한 날짜 포맷 확인 이전에 다뤘던 날짜 포맷 유효성 검사를 정규식으로 다시 표현해봤다. https://muabow.tistory.com/326 [PYTHON] 유효한 날짜 포맷 확인 / datetime 유효한 날짜 포맷 확인 특정 패턴을 갖는 날짜 포맷을 확인하는 소스코드이다. 개인적으로는 별도의 모듈을 사용한, 그것도 try-except를 사용한 구조를 무척 좋아하지 않기 때문에 사용하던 프 muabow.tistory.com 소스코드 정말 간단한 정규식을 이용하여 패턴화 시켰다. 날짜 포맷은 여러 가지를 사용할 수 있지만 API의 정적인 format을 해치지 말아야 하기 때문에 다른 format 은 배제한다. 정규식에서 d는 digit를 의미하며 소문자는 string을 사용하지 않는 only dig.. 2022. 1. 28.
[PHP] 상수를 이용한 다중 텍스트 치환 / const, define to text, constant, preg_match_all 상수를 이용한 다중 텍스트 치환 상수를 이용한 다중 텍스트 치환을 어디다 쓸 수 있는지 예를 들어보자면 다국어를 지원하는 환경에서 현재 설정된 언어셋이 무엇인지 모르겠지만 프로그램에선 상수화된 키워드를 사용하여 텍스트를 사용하는(e.g. UI 팝업, 시스템 로그 등) 경우 사용할 수 있다. 언어셋에 맞게 텍스트를 구성하는 게 아니라 모든 텍스트를 키워드로 구성해두고 상수를 프리셋으로 사용하면 가변적인 대응이 가능해진다. 그 밖에도 유연한 텍스트 구성에 사용할 수 있으니 참고하자. 소스코드 preg_match_all()를 사용하여 대상 텍스트 내에 { } 괄호로 둘러싸인 키워드와 동일한 이름을 사용하는 상수로 대체한다. 동일한 상수가 있다면 해당 값을 사용하고 const, define 모두 사용 가능하다... 2022. 1. 21.
linux awk 사용법과 예제 설명 awk(오크; Aho Weinberger Kernighan) - awk의 기본 기능은 텍스트 형태로 되어있는 입력 데이터를 행과 단어 별로 처리해 출력하는 것 1. 사용법 Usage: awk [POSIX or GNU style options] -f progfile [--] file ... awk [POSIX or GNU style options] [--] 'program' file ... Examples: awk '{ sum += $1 }; END { print sum }' file awk -F: '{ print $1 }' /etc/passwd 2. 설명 - awk는 패턴 처리 명령어로 직접 사용자로부터 입력을 받거나 지정한 파일을 가공하여 표준 출력한다. - 표준 출력을 리다이렉션 할 수 있다. - 검.. 2021. 12. 29.
리눅스 파일 내 텍스트 찾아 바꾸기 설명과 예제 리눅스 파일 내 텍스트 찾아 바꾸기 리눅스로 작업을 하다보면 높은 확률로 파일 내의 텍스트를 변경할 경우가 생긴다. 그것도 무척 단조롭고 많은 파일을 대상으로.. 예를 들자면 소스 코드 내에 fixed 한 소켓 포트 번호라던가 절대 경로 수정 같은 일.. 이럴때 find 와 sed를 조합하여 파일 내 텍스트를 바꿀 수 있다. # 기호 의미 : 필수 [] : 옵션 # 명령어 find [-type f] -exec sed -i 's///g' {} + # 사용 예 find /home/user -type f -exec sed -i 's/5555/0000/g' {} + - /home/user 디렉토리 내에 모든 파일을 대상으로 파일 내 텍스트 5555를 0000으로 치환 함을 의미. - find 명령어와 sed 명.. 2020. 3. 30.