나는 정규식을 사용하는 것에 상당히 익숙하며 아직 모든 것에 대한 구문에 대해서는 완전히 명확하지 않다. 기본적으로 나는 가지고있는 코드의 일부에 붙어있다 :정규식을 문자열과 결합하려면 어떻게해야합니까?
if(@"\d{2,}\s"+string == Path.GetFileNameWithoutExtension(dir))
{
do stuff
}
내 문제는 어떤 것도 일치하지 않는다는 것이다. 필자는 기본적으로 파일 검색을 통해 두 자리와 공백이 있으며 사용자가 검색하는 이름을 찾습니다. 내가 정규식 + 문자열을 결합 할 수 또는 정규식/문을 문제가 무엇입니까? 명확하게하기 위해 실제로 파일에서 두 자릿수와 공백을 제거하면 일치합니다. 문제가 분명하다면 며칠 동안 정규식을 가지고 놀았습니다. ...
확실히 C# 구문이 올바르지 않습니다. – MarcinJuraszek
String == 정규 표현식과 관련이 없습니다. 문자 그대로의 텍스트를 비교합니다. Regex.IsMatch 또는 Regex.Matches를 사용하여 문자열을 정규식과 비교할 때 == –
이 아닌 정규 표현식을 평가할 필요가 있습니다. 그것은 단순히'\ d {2,} \ s'와'string'의 내용을 하나의 문자열로 연결합니다 - 당신이 "정규식"이라고 부르는 것은 단순한 리터럴 문자열 일 것입니다. 정규식을 해킹하려고 시도하는 대신 (항상 적절하지는 않음) 왜 성취하려고하는지 설명하고 왜 그렇게해야하는지 묻지 않겠습니까? –