문자열에서 $, # 등의 특수문자를 제거하는 방법을 소개합니다.
1. 정규표현식(Regex)으로 특수 문자 제거
Regex.Replace(string, pattern, replacement)
는 string에서 정규표현식 pattern에 해당하는 문자열을 찾아서 모두 replacement로 변경합니다.
아래 예제에서 [^a-zA-Z0-9가-힣\s]
는 영어, 한국어, 숫자, 띄어쓰기를 제외한 다른 문자에 해당하는 패턴입니다. 이 패턴으로 문자들을 찾아서 빈 문자열로 변환하여 제거합니다.
using System;
using System.Text.RegularExpressions;
namespace Example {
public class Program {
public static void Main(string[] args) {
string str = "AA**BB#@$CC 가나다-123";
string result = Regex.Replace(str, @"[^a-zA-Z0-9가-힣\s]", "");
Console.WriteLine(result);
}
}
}
Output:
AABBCC 가나다123
만약 공백(white space)도 제거하고 싶다면, 패턴에서 white space에 해당하는
\s
를 제거하시면 됩니다. 즉, [^a-zA-Z0-9가-힣] 처럼 사용하시면 됩니다.
정규표현식에서 ^는 not의 의미입니다. [a-z]가 a에서 z에 해당하는 문자를 의미한다면, [^a-z]는 a-z에 해당하지 않는 문자를 의미합니다.
2. 일본어를 제외한 다른 문자 제거
위와 동일한 방식으로, 아래와 같이 일본어 외에 다른 언어 및 문자들을 정규표현식 패턴으로 찾아서 빈 문자열로 변환하면 제거가 됩니다.
string str = "AA**BB#@$CC 가나다-123文字列から数字のみを抽出する方法";
string result = Regex.Replace(str, @"[^ぁ-ゔァ-ヴー々〆〤一-龥]", "");
Console.WriteLine(result);
Output:
文字列から数字のみを抽出する方法
만약 숫자와 영어, 띄어쓰기도 허용한다면, 아래와 같이 패턴을 구현하면 됩니다.
string result = Regex.Replace(str, @"[^a-zA-Z0-9\sぁ-ゔァ-ヴー々〆〤一-龥]", "");
3. 영어, 숫자를 제외한 다른 문자 제거
아래 예제에서 [^a-zA-Z0-9\s]
패턴 처럼, 영어와 숫자를 제외한 다른 문자들을 찾아서 빈 문자열로 변환할 수 있습니다.
string str = "This** is#@$ an Example 가나다-123文字列から数字のみを抽出する方法";
string result = Regex.Replace(str, @"[^a-zA-Z0-9\s]", "");
Console.WriteLine(result);
Output:
This is an Example 123
Loading script...
Related Posts
- C# 바이트(Byte) 배열을 문자열로 변환
- C# String.format() 함수 알아보기
- C# - foreach (Array, List, Dictionary)
- C# 프로퍼티(Property) Get/Set 함수
- C# - Dictionary에서 key, value 가져오기
- C# - Dictionary 순회, foreach, for 루프
- C# - Dictionary에서 key, value 삭제
- C# - Dictionary.add()로 데이터 추가
- C# - Dictionary 선언 및 초기화
- C# - 문자열을 Double, Float으로 변환
- C# - 문자열을 리스트로 변환
- C# - 두 날짜/시간 비교, DateTime.Compare()
- C# - 날짜 계산, DateTime 시간 더하기 빼기
- C# - 날짜 문자열을 DateTime으로 변환
- C# - Sleep, 몇 초간 지연시키기
- C# - Timestamp(millisecond)를 DateTime 객체로 변환
- C# - 현재 시간 가져오기, DateTime
- C# - 문자열 리스트를 문자열로 변환
- C# - 리스트 복사 (얕은 복사, 깊은 복사)
- C# - 2차원 리스트 선언 및 초기화
- C# - 리스트 선언 및 초기화
- C# - 리스트 길이, 크기 가져오기
- C# - 리스트 합계, 평균 계산
- C# - 리스트 요소 제거 (RemoveAt, RemoveAt, RemoveAll)
- C# - 리스트에서 빈 문자열, null 제거
- C# - 리스트 두개로 분리, n개로 나누기
- C# - 문자열 뒤집기, Reverse()
- C# - 2차원 배열 복사, Clone
- C# - 문자열 배열을 문자열로 변환
- C# - 2차원 배열 선언, 초기화 방법
- C# - 배열 길이, 2차원 배열 길이
- C# - 두개의 배열을 하나로 합치기
- C# - 배열 중복 요소 제거
- C# - 배열에서 특정 요소 제거
- C# - Int 배열 정렬 (오름차순, 내림차순)