2013-07-17 3 views
1

는이 같은 동일한 패턴을 가진 문자열을 ../root/이되고 위의 모든 문자열은 다음과 같이됩니다. root/assets/정규식 재귀 패턴

정규식과 재귀 패턴을 가진 모자?

나는 C#을

string content1 = "../assets"; 
string content2 = "../../assets"; 
string content3 = "../../../assets"; 
string pattern1 = "(\.\./)"; 
string pattern2 = "(\.\./\.\./)"; 
string pattern3 = "(\.\./\.\./\.\./)"; 

// All the result is "root/assets" 
content1 = Regex.Replace(content1, pattern1, "root/"); 
content2 = Regex.Replace(content2, pattern2, "root/"); 
content3 = Regex.Replace(content3, pattern3, "root/"); 

답변

2

필요 없음 재귀를 사용하고


업데이트, 당신은 단지 s#(\.\./)+#root/#g이 (당신은 언어를 지정하지 않을 수 있습니다, 그래서 이것은 루비/펄입니다 버전) : 반복 숫자 ../을 찾고 전체를 root/으로 바꿉니다.