[C# 정규표현식] 정규표현식 제외하기
- C#/정규표현식
- 2021. 11. 16. 20:07
참조
- 손에 잡히는 정규표현식
소개
- 안녕하세요. 오늘은 정규표현식에서 찾고 싶은 문자가 아닌 제외하고 싶은 문자 목록을 어떻게 정규표현식에서 표현하는지 알려 드리려고 합니다.
- 보통 정규표현식은 일반적으로 찾고 싶은 문자의 목록을 정하는데 쓰지만, 반대로 찾을 때 제외하고 싶은 문자 목록을 정할때도 쓸 수 있습니다.
- 캐럿(^) 문자를 써 제외할 문자 집합을 지정하면 되는데요.
- 예제 코드를 통해서 어떻게 사용하는지 보도록 하겠습니다.
예제 코드
using System;
using System.Text.RegularExpressions;
namespace test
{
class Program
{
static void Main(string[] args)
{
string text = "sales1.xls, order3.xls, sales2.xls, sales3.xls, apac1.xls, europe2.xls, sa.xls, na1.xls, na2.xls, sa1.xls, sam.xls";
string pattern = @"[ns]a[^0-9]\.xls";
var matches1 = Regex.Matches(text, pattern);
foreach (var match in matches1)
{
Console.WriteLine($"{pattern} 패턴에 매칭된 데이터 {match}");
}
}
}
}
- 위의 패턴을 보시게 되면 [^0-9]는 정해진 범위 내에 있는 수자와 일치하지 않습니다.
- 즉 [ns]a[^0-9].xls는
na1.xls, na2.xls, sa1.xls
와는 일치하지 않게 됩니다. - 오직 sam.xls 와 일치합니다.
실행 결과
[ns]a[^0-9]\.xls 패턴에 매칭된 데이터 sam.xls
728x90
'C# > 정규표현식' 카테고리의 다른 글
[C# 정규표현식] 메타 문자 사용하기 (0) | 2021.11.19 |
---|---|
[C# 정규표현식] RGB 정규표현식 (0) | 2021.11.16 |
[C# 정규표현식] 문자 집합 범위 사용하기 (0) | 2021.11.16 |
[C# 정규표현식] 여러 문자 중 하나와 일치시키기 (0) | 2021.11.15 |
[C# 정규표현식] 정규표현식 특수문자 찾기 (0) | 2021.11.15 |
이 글을 공유하기