반응형
문자열 내에서 문자열이 나타나는 횟수 계산
이 질문에 이미 답변이 있습니다.
다음과 같은 문자열이 있습니다.
"7, true, NA, false : 67, false, NA, false : 5, false, NA, false : 5, false, NA, false"
내가 원하는 것은 문자열 " true "가 해당 문자열에 나타나는 횟수를 계산하는 것 입니다. 답이 비슷한 것 String.CountAllTheTimesThisStringAppearsInThatString()
같지만 왠지 모르겠어요. 도움?
Regex.Matches(input, "true").Count
아마도 가장 효율적인 방법은 아니지만 그것을 수행하는 깔끔한 방법이라고 생각하십시오.
class Program
{
static void Main(string[] args)
{
Console.WriteLine(CountAllTheTimesThisStringAppearsInThatString("7,true,NA,false:67,false,NA,false:5,false,NA,false:5,false,NA,false", "true"));
Console.WriteLine(CountAllTheTimesThisStringAppearsInThatString("7,true,NA,false:67,false,NA,false:5,false,NA,false:5,false,NA,false", "false"));
}
static Int32 CountAllTheTimesThisStringAppearsInThatString(string orig, string find)
{
var s2 = orig.Replace(find,"");
return (orig.Length - s2.Length) / find.Length;
}
}
정규식은 \btrue\b
Casper가 제기하는 '잘못된'문제를 해결하는 것이어야 합니다. 전체 솔루션은 다음과 같습니다.
string searchText = "7,true,NA,false:67,false,NA,false:5,false,NA,false:5,false,NA,false";
string regexPattern = @"\btrue\b";
int numberOfTrues = Regex.Matches(searchText, regexPattern).Count;
System.Text.RegularExpressions 네임 스페이스가 파일 맨 위에 포함되어 있는지 확인하십시오.
문자열이 "miscontrue"와 같은 문자열을 포함 할 수 있으면 실패합니다.
Regex.Matches("7,true,NA,false:67,false,NA,false:5,false,NA,false:5,false,NA,false", "true").Count;
Linq와 함께 ...
string s = "7,true,NA,false:67,false,NA,false:5,false,NA,false:5,false,NA,false";
var count = s.Split(new[] {',', ':'}).Count(s => s == "true" );
여기에서는 LINQ를 사용하여 답변을 과도하게 설계하겠습니다. 계란을 요리하는 방법이 'n'개 이상임을 보여줍니다.
public int countTrue(string data)
{
string[] splitdata = data.Split(',');
var results = from p in splitdata
where p.Contains("true")
select p;
return results.Count();
}
이렇게하면 '테스트'에 대한 정규식을 정의해야합니다 !!!
string s = "7,true,NA,false:67,false,NA,false:5,false,NA,false:5,false,NA,false";
string[] parts = (new Regex("")).Split(s);
//just do a count on parts
반응형
'programing' 카테고리의 다른 글
CryptographicException이 처리되지 않았습니다. 시스템이 지정된 파일을 찾을 수 없습니다. (0) | 2021.01.16 |
---|---|
iOS 방향 변경 즉시 감지 (0) | 2021.01.16 |
데이터 테이블 온더 플라이 크기 조정 (0) | 2021.01.16 |
TypeScript의 'instanceof'에서 " 'Foo'는 유형 만 참조하지만 여기서는 값으로 사용되고 있습니다."라는 오류가 표시되는 이유는 무엇입니까? (0) | 2021.01.15 |
던지지 않도록 IDisposable.Dispose ()를 구현해야합니까? (0) | 2021.01.15 |