🚀 AI & Tech 데일리 브리핑 (2026.03.30)

이미지
금융트렌드 🚀 AI & Tech 데일리 브리핑 (2026.03.30) AgileBus 2026. 3. 31. 08:13 # 🚀 AI & Tech 데일리 브리핑 (2026.03.30) 오늘의 글로벌 AI 시장은 플랫폼의 수익화 과제와 멀티 모델을 통한 기술적 돌파구가 핵심 키워드입니다. 최신 동향을 한눈에 확인하세요! --- 글로벌 빅테크 심층 분석 1. OpenAI ChatGPT 앱 플랫폼, 출시 6개월 만에 성장 정체 * **현황:** 300개 이상의 통합 서비스가 입점했음에도 불구하고, 실제 구매 전환으로 이어지는 채택률이 부진한 것으로 나타났습니다. * **대응:** 사용자들이 채팅 내에서 상품을 둘러보기만 하는 현상이 지속되자, OpenAI는 '즉시 결제(Instant Checkout)' 기능을 축소하고 파트너 앱 내 거래로 전략을 수정했습니다. * **이슈:** 에어비앤비 CEO 브라이언 체스키는 "아직 준비가 안 됐다"고 평가했으며, 개발자들 사이에서는 SDK 버그와 낮은 앱 검색 기능에 대한 불만이 제기되고 있습니다. 2. 마이크로소프트, '멀티 모델' 전략으로 신뢰성 확보 (Critique 공개) * **기술 혁신:** 리서치 초안은 **OpenAI의 GPT**가 작성하고, 검증은 **앤트로픽(Anthropic)의 Claude**가 수행하는 교차 확인 시스템 'Critique'를 선보였습니다. * **성과:** 이 방식은 DRACO 딥 리서치 벤치마크에서 단일 모델 대비 13.8%의 성능 향상을 기록하며 업계를 앞섰습니다. * **확산:** Claude 기반의 **Copilot Cowork** 에이전트를 '프런티어(Frontier)' 프로그램을 통해 더 많은 기업 고객에게 개방하며 점유율 확대에 나섰습니다. --- 📑 분야별 주요 뉴스 스크랩 1. [산업 지형] AI 시대, 데이터를 둘러싼 새로운 격차 * 스타트업의 데이터 접근성 부족이 시장 진입 장벽...

[핵심기초] 파이썬에서 정규 표현식 이용하기

 


[핵심기초] 파이썬에서 정규 표현식 이용하기


파이썬에서 정규표현식을 사용하기 위해서는 Regex를 위한 모듈인 re 모듈을 사용합니다.

 re 모듈의 compile 함수는 정규식 패턴을 입력으로 받아들여 정규식 객체를 리턴합니다. re.compile('검색 대상 문자열') 함수로 검색 대상 문자열을 입력하고 정규식 객체 (re.RegexObject 클래스 객체)를 통해 정규식을 이용할 수있습니다.

re.RegexObject 클래스는 re.search(pattern), re.match(pattern) ,re.split(pattern) 등과 같이 문자열을 검색, 분리, 대체 하는 다양한 함수들을 제공합니다.


1. 파이썬 Re모듈이 제공하는 Method 기능

- match(), search(), findall(), split(), sub() 등과 같이 다양한 함수를 제공합니다.

구분Method 종류설명
검색



re.match(RE, string)문자열의 시작 부분에서 RE가 일치하는지 판단합니다.
re.search(RE, string)문자열을 읽어 RE가 일치하는 위치를 찾으습니다.
re.findall(RE,string)RE가 일치하는 모든 부분 문자열을 찾아 리스트로 반환합니다.
re. finditer(RE,string)RE가 일치하는 모든 부분 문자열을 찾아 iterators 로 반환합니다
분리re.split(RE, string)문자열을 RE 패턴으로 쪼개어 리스트로 반환 합니다.
대체re.sub(RE, SUB, string)문자열에서 RE 패턴의 문자열을 SUB 문자열로 대체합니다.
* Iterators : https://www.w3schools.com/python/python_iterators.asp

다음은 파이썬 정규표현식 re 모듈을 import 하고 특정 문자열에서 무궁화로 시작하고 bloomed.로 마치는 문자를 확인하는  정규표현식입니다.


import  re

txt =  "무궁화 꽃이 피었다, The Mugunghwa has bloomed."
x = re.search("^무궁화.*bloomed.$", txt)
if x:
    print("YES! We have a match!")
else:
    print("No match")

print(x)

# 결과
<re.Match object; span=(0, 38), match='무궁화 꽃이 피었다. The Mugunghwa has bloomed.'>
# .* : 앞의 문자가 0개 이상 반복

파이썬 Re모듈로 문자열의 인덱스 기능

- 찾는 문자열의 시작위치, 끝 위치, 포함하는 구간의 문자열의 인덱스를 리턴합니다.

Method 종류설명
group()RE와 일치하는 문자열을 반환합니다.
start()일치의 시작 위치를 반환합니다
end()일치의 끝 위치를 반환합니다
span()일치의 (시작, 끝) 위치를 포함하는 튜플을 반환합니다.

 

import re
txt="Isaac Newton, physicist"
m = re.match(r"(\w+) (\w+)", txt)
print("group.all:",    m.group(0) )  # The entire match
print("group.first:",  m.group(1) )  # The first parenthesized subgroup.
print("group.second:", m.group(2) )  # The second parenthesized subgroup.
print("group.multiple:", m.group(1, 2))    # Multiple arguments give us a tuple.

>>>>>>>>>>>>>>>
group.all: Isaac Newton
group.first: Isaac
group.second: Newton
group.multiple: ('Isaac', 'Newton')

 

3. 자주 사용하는 정규식


3.1 정규식 정의 방법

1) 슬래시 와 문장 패턴을 사용
const re = /ab+c/
2) RegExp 생성자 이용
const re = new RegExp( 'ab+c')

3.2 정규식에 사용하는 메타 문자들의 용도별 예시

정규식에서 사용하는 메타문자의 종류 : . ^ $ * + ? { } [ ] \ | ( ) 등과 같은 특수 문자들 입니다.
정규식에 포함되는 일부 문자들은 특수한 의미와 기능을 가진 메타 문자 (metacharacters)로 인식합니다. 일반적인 문자로서 인식 하려면 "₩." ₩^ ₩$ 등과 같이 역슬래쉬 다음의 문자는 원래의 문자로 인식을 합니다. 주로 정규식의 메타 문자는 Regular Expression에서 특정 문자의 반복이나 의미를 바꾸어 주도록 처리할 문자 검색과 대체 등에 활용이 됩니다.


`.` :  1개의 문자와 일치, 뉴라인(\n) 을 제외한 모든 문자를 의미
예) .{3} : 아무 문자 3개로 구성된 문자열을 의미 (F15, 0x0 등)

import re
pattern =r"gr.y"
string ="gray"
result = re.match(pattern, string)
print(result)
# <re.Match object; span=(0, 4), match='gray'>

 
`^` : 문자열이나 행의 처음을 의미,  문자열의 시작 패턴을 의미함 
예) ^abc : abc로 시작하는 문자열을 의미 (abcd, abc12 등)

pattern =r"^gr.y"
string ="gray"
result = re.match(pattern, string)

`$` : 문자열을 마지막을 의미하고  종료 문자열의 패턴을 정의함
예) xyz$ : xyz로 종료되어야 함 (123xyz, strxyz 등)

pattern = r"gr.y$"
string = "gray"
result = re.match(pattern, string)

`*` : 앞 패턴이 0개 이상 반복됨을 의미
예) \d* : 숫자가 없거나 하나 이상인 문자열을 의미 

pattern = r"go*gle"
string = "ggle"
result = re.match(pattern, string)

`+` : 앞 패턴이 최소 하나 이상 반복됨
예)  \d+ : 숫자가 하나 이상 반복되는 문자열을 의미\

import re
pattern = r"go+gle"
string = "gogle"
result = re.match(pattern, string)

`?` : 앞 패턴이 없거나 정확히 하나의 문자를 의미함 (Optional 패턴을 정의할 때 사용)
예) \d? : 숫자가 하나 있거나 없어야 함

import re
pattern = r"go?gle"
string = "ggle"
result = re.match(pattern, string)

{n} : {n} 반복횟수가 정확히 n번, 패턴{n} 앞 패턴이 n번만 반복해서 나타나는 경우
예) \d{3} : 숫자가 3개 있어야 함 
{n,} : {n,} 반복횟수가 n번 이상, 패턴{n,} 앞 패턴이 n번 이상 반복해서 나타나는 경우
예) \d{3,} : 숫자가 3개이상 이어야 함
{n,m} :  {m, n} 반복 횟수 지정, 패턴{n, m} 앞 패턴이 최소 n번, 최대 m 번 반복해서 나타나는 경우 (n 또는 m 은 생략 가능)
예) \d{3,5} : 숫자가 3개, 4개 혹은 5개 있어야 함 

import re
pattern =r"go{1,3}gle"
string ="googlegle"
result = re.match (pattern, string)

 
[]: [문자들] 괄호 안의 가능한 문자 들의 집합을 정의함
예)  [Pp]ython : "Python" 혹은 "python"

import re
pattern =r"[abc]de"
pattern = r"[^abc]de"
string ="ade"
result = re.match (pattern, string)

`[^문자들]` :  [문자들] 중에서 제외되는(피해야할) 문자들의 집합을 정의함.
예) [^aeiou] : 소문자 aeiou를 문자를 제외한 문자들 의미함

import re
pattern = r"[^abc]de"
string ="ade"
result = re.match (pattern, string)

() : 괄호안의 문자열을 그룹으로인식함
예)  [(abc)f-z]   :   abcf,  abcx  abcz 등 과 같이 abc로 시작되는 문자열을 표현
`\` :  '\' 뒤에오는 문자를 특수 문자로 인식을 합니다. 
예) \\ 특수문자 '\'     \.  "."
`|` : 두 패턴 중 하나이어야 함 (OR 기능)
예) a | b : a 또는 b 를 나타냄
\A , \Z : \A 는 ^ 와 같고    \Z 는 $ 와 같음 
 

3.3 정규식에서 사용하는 특수 시컨스

정규식의 문자처리를 좀더 쉽게 표현하기 위해서 메타 문자와 달리 역설래시와 알파벳 문자로 구성된 특스 시컨스는 특수한 의미를 부여합니다.
특수 시퀀스는 '\'로 시작하고 숫자(digit) 집합, 글자(letter) 집합 또는 공백이 아닌 모든 것의 집합과 같이 종종 유용한 미리 정의된 문자 집합을 나타냅니다.

\d :
    숫자 0 ~ 9 \d\d\d : 0 ~ 9 범위의 숫자가 3개를 의미 (123, 000 등)
\w :
    문자를 의미 \w\w\w : 문자가 3개를 의미 (xyz, ABC 등)
\s :
    화이트 스페이스를 의미하는데, [\t\n\r\f] 와 동일 \s\s : 화이트 스페이스 문자 2개 의미 (\r\n, \t\t 등)
\d : 
    모든 십진 숫자와 일치합니다; 이것은 클래스 [0-9]와 동등합니다.
\D : 
   모든 비 숫자 문자와 일치합니다; 이것은 클래스 [^0-9]와 동등합니다.
\s : 
   모든 공백 문자와 일치합니다; 이것은 클래스 [ \t\n\r\f\v] 와 동등합니다.
\S :   
    모든 비 공백 문자와 일치합니다; 이것은 클래스 [^ \t\n\r\f\v] 와 동등합니다.
\w :
   모든 영숫자(alphanumeric character)와 일치합니다; 이것은 클래스 [a-zA-Z0-9_]와 동등합니다.
\W : 
   모든 비 영숫자와 일치합니다; 이것은 클래스 [^a-zA-Z0-9_]와 동등합니다.



참고
https://docs.python.org/ko/3/howto/regex.html

댓글

이 블로그의 인기 게시물

Linux - Rsyncd 설치와 selinux 문제 해결법 (Centos8)

chatGPT 응답 품질 점검 - Check outputs

KrakenD API Gateway - krakend.json 파일의 기본 구조