정규식은 입력 텍스트와 일치할 수 있는 패턴입니다. .Net 프레임워크는 이러한 일치를 허용하는 정규식 엔진을 제공합니다. 패턴은 하나 이상의 문자 리터럴, 연산자 또는 구성으로 구성됩니다.
다음은 RegEx에서 사용하는 기본 패턴 메타 문자입니다. -
* = zero or more ? = zero or one ^ = not [] = range
^ 기호는 not 조건을 지정하는 데 사용됩니다.
0 - 9 또는 a-z 또는 A-Z와 같은 범위 값을 제공하려면 [] 대괄호
Char.IsDigit() 사용
예시
using System; namespace DemoApplication{ public class Program{ static void Main(string[] args){ string str1 = "123string456"; string str2 = string.Empty; int val = 0; Console.WriteLine($"String with number: {str1}"); for (int i = 0; i < str1.Length; i++){ if (Char.IsDigit(str1[i])) str2 += str1[i]; } if (str2.Length > 0) val = int.Parse(str2); Console.WriteLine($"Extracted Number: {val}"); Console.ReadLine(); } } }
출력
String with number: 123string456 Extracted Number: 123456
위의 예에서 우리는 문자열 str1의 모든 문자를 반복하고 있습니다. TheChar.IsDigit() 특정 문자가 숫자인지 여부를 확인하고 나중에 숫자로 구문 분석되는 새 문자열에 추가합니다.
정규식 사용
예시
using System; using System.Text.RegularExpressions; namespace DemoApplication{ public class Program{ static void Main(string[] args){ string str1 = "123string456"; string str2 = string.Empty; int val = 0; Console.WriteLine($"String with number: {str1}"); var matches = Regex.Matches(str1, @"\d+"); foreach(var match in matches){ str2 += match; } val = int.Parse(str2); Console.WriteLine($"Extracted Number: {val}"); Console.ReadLine(); } } }
출력
String with number: 123string456 Extracted Number: 123456
위의 예에서는 정규식(\d+)을 사용하여 문자열 str1에서 숫자만 추출합니다.