2011-05-05 4 views
0

다음 문자열에서 일치시킬 수있는 방법 : 상수 문자열 이름, 마침표, 양의 정수, 뒤에 다른 점.빠른 도움말 Regex C#

SomeText.1 :

예를 들어 내가 이런 일을 찾고 싶어요.
SomeText.99.
SomeText.100.
SomeText.1002.

^SomeText\.\d+\.$

설명하려면 :

답변

4

Regex.Match(input, @"SomeText\.\d+\.");

0

귀하의 정규식

var result = Regex.Match(stringToMatch, @"SomeText\.\d+\."); 
2

이런 식으로 뭔가를 시도 할 것입니다 C# 코드에서 어떤, SomeText\.\d+\.

과 같을 것이다 :

^은 줄의 시작을 의미하며, $은 줄의 끝을 의미합니다. 이렇게하면 전체 문자열이 표현식과 일치하는 것을 확인할 수 있습니다. 패턴과 일치하는 문자열이 아닌지 확인하십시오.

SomeText 부분은 자체 설명입니다.

\.은 "하나 하나 일치"를 의미합니다. \는 마침표의 의미를 벗어나야합니다. 그 자체로 "모든 단일 문자"를 의미합니다.

\d+은 "하나 이상의 숫자"를 의미합니다.

그런 다음 \.을 다시 입력하고 마지막으로 $을 입력하여 문자열이 끝나는 지점을 나타냅니다. 당신이 번호를 검색 할 수있게하려면

1

, 시도 :

var exp = new Regex(@"SomeText\.(?<number>\d+)\.",RegexOptions.Compiled); 
foreach(string s in allStrings) 
{ 
    var collection = exp.Match(s); 
    if (collection.Success) 
    { 
     int myNumber = int.parse(collection.Groups["number"].Value); 
     // ... 
    } 
}