336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

좋은 질문이에요 👍
React 자체는 특별한 문자열 유틸을 제공하지 않지만, JS 기본 함수로 **“치환, 배열 분리, 포함 여부 검사”**는 거의 전부 해결할 수 있고, 실무에서는 이를 감싼 커스텀 유틸 함수를 만들어 두는 게 일반적입니다.

아래에 🔥 자주 쓰는 3가지 카테고리별 유틸을 정리해드릴게요:


✏️ 1. 문자열 치환 (replace / replaceAll)

// ✅ 단순 치환 (처음 하나만)
const result1 = "Hello World".replace("World", "React");
// → "Hello React"

// ✅ 모든 항목 치환 (replaceAll 또는 정규식)
const result2 = "apple banana apple".replaceAll("apple", "orange");
// → "orange banana orange"

const result3 = "apple banana apple".replace(/apple/g, "orange");
// → "orange banana orange"

// ✅ 여러 단어를 한 번에 치환 (객체 매핑 활용)
const replaceMap = (str, map) =>
  str.replace(new RegExp(Object.keys(map).join("|"), "g"), (m) => map[m]);

console.log(replaceMap("I like red and blue", { red: "green", blue: "yellow" }));
// → I like green and yellow

팁: React에서 입력 값 전처리(공백 제거, 금칙어 치환 등)에도 자주 사용됩니다.


📚 2. 특정 문자열 기준으로 배열화 (split)

// ✅ 구분자로 배열 생성
const fruits = "apple,banana,orange".split(",");
// → ["apple", "banana", "orange"]

// ✅ 줄바꿈 기준으로 나누기
const lines = "1줄\n2줄\n3줄".split("\n");
// → ["1줄", "2줄", "3줄"]

// ✅ 정규식 활용 (공백/쉼표 모두 기준)
const words = "apple, banana  orange".split(/[\s,]+/);
// → ["apple", "banana", "orange"]

// ✅ 특정 문자열 기준으로 앞뒤 나누기 (2개만)
const [before, after] = "title:React".split(":");
// before = "title", after = "React"

📌 실전 예:
서버에서 "A|B|C" 같은 문자열이 올 때 배열로 만들어 React map()으로 UI를 뿌리는 데 자주 쓰입니다.


🔍 3. 특정 문자열 포함 여부 / 위치 찾기

// ✅ 포함 여부 확인 (대소문자 구분)
"Hello React".includes("React"); // true

// ✅ 대소문자 무시 포함 확인
"Hello React".toLowerCase().includes("react"); // true

// ✅ 시작/끝 검사
"Hello React".startsWith("Hello"); // true
"Hello React".endsWith("React");   // true

// ✅ 위치 찾기 (indexOf / lastIndexOf)
"Hello React".indexOf("React"); // 6 (없으면 -1)

// ✅ 조건문 활용 예시
if ("apple banana".includes("banana")) {
  console.log("🍌 포함됨!");
}

🧪 보너스: 응용 예제 (3가지 기능 조합)

아래는 실무에서 자주 쓰는 문자열 → 배열 → 검사 흐름 예시예요 👇

const csv = "id:1,name:John,age:20";

// ① 콤마로 나눠 배열로
const pairs = csv.split(",");

// ② 각 항목을 key:value 객체로 변환
const obj = Object.fromEntries(pairs.map(pair => pair.split(":")));
// → { id: "1", name: "John", age: "20" }

// ③ 특정 key 포함 여부 검사
if ("name" in obj) {
  console.log(`이름: ${obj.name}`); // 이름: John
}

 

 

 

 

 

 

 

'REACT' 카테고리의 다른 글

[REACT] fatch, axios 사용법  (0) 2025.09.28
[REACT] useEffect로 알아보기  (0) 2025.09.28
[REACT] USESTATE 변수관리법  (0) 2025.09.28
[REACT] 핵심특징 7가지  (0) 2025.09.28

+ Recent posts