피드로 돌아가기
Dev.toFrontend
원문 읽기
AMPscript 기반 단어 단위 정밀 텍스트 절단 로직 구현
How To Limit The Number Of Words Or Characters Shown With SFMC's AMPscript
AI 요약
Context
SFMC 내 Substring() 함수 사용 시 문자 수 기준 절단으로 인한 단어 파손 및 부적절한 문구 생성 문제 발생. 단순 글자 수 제한 방식이 사용자 경험(UX)과 브랜드 이미지에 부정적 영향을 주는 한계점 식별.
Technical Solution
- BuildRowsetFromString() 함수를 활용하여 텍스트를 공백 기준 Rowset으로 변환하는 Tokenization 구조 설계
- For Loop와 Row() 함수를 통한 개별 단어 순회 및 Concat() 기반의 문자열 재구성 로직 구현
- Add()와 Length() 함수를 조합하여 누적 길이를 계산함으로써 설정된 Character Limit 내 최대 단어를 포함하는 Greedy 알고리즘 적용
- IndexOf() 함수를 통한 끝 문자 Punctuation 검증 및 Substring() 기반의 불필요한 특수문자 제거 프로세스 구축
- 원문 길이와 최종 결과물의 길이를 비교하여 Ellipsis(...)를 동적으로 추가하는 후처리 파이프라인 설계
실천 포인트
1. 텍스트 절단 시 문자 단위가 아닌 Word Boundary 기반의 로직을 적용하여 가독성 확보 여부 검토
2. 동적 콘텐츠 생성 시 예외적인 단어 파손(Word Breaking)으로 인한 비즈니스 리스크 분석
3. 문자열 재구성 후 Trim() 및 특수문자 제거 필터링 단계 포함 여부 확인
4. 가변 길이 데이터 처리 시 최대 허용치(Limit)와 실제 데이터 길이 간의 비교를 통한 말줄임표 처리 로직 구현