여기 내 입력 문자열 문자 (들)의 수를 계산합니다 :
줄 뭔가를해야만 foo는 줄 뭔가를해야만 foo는PCRE 패턴
바 & 사이 foo는
줄 뭔가를해야만 foo는 -> 1
줄 뭔가를해야만 foo는 - 나는 우리가
/bar(.*?)foo/
를 사용한 다음 경기에서 문자의 수를 셀 수있어> 1
[1]와 문자열 함수
계산을 위해이 문자열을 사용하는 방법이 있습니까?
여기 내 입력 문자열 문자 (들)의 수를 계산합니다 :
줄 뭔가를해야만 foo는 줄 뭔가를해야만 foo는PCRE 패턴
바 & 사이 foo는
줄 뭔가를해야만 foo는 -> 1
줄 뭔가를해야만 foo는 - 나는 우리가
/bar(.*?)foo/
를 사용한 다음 경기에서 문자의 수를 셀 수있어> 1
[1]와 문자열 함수
계산을 위해이 문자열을 사용하는 방법이 있습니까?
펄 솔루션 :
$_ = 'bar test this thing foo';
my $count = /bar(.*?)foo/ && $1 =~ tr/t//;
print $count;
출력 :
4
(?{ code })
단일 표현 사용
그냥 재미를 위해, :
$_ = 'bar test this thing foo';
my $count = 0;
/bar ((?:(?!bar)[^t])*+) (?:t (?{ ++$count; }) (?-1))*+ foo/x or $count = 0;
print $count;
@Qtax을 : t 그는 PCRE를 말하고 있습니다 ... 그래서 그것은 정확히 perl이 아닙니다. 그러므로 (? {code}) 대부분 지원되지 않을 것입니다 (전체 perl 코드는 말할 것도 없습니다). 두 솔루션은 시원하지만)
@tqwer : 내가 정규식으로 계산 뒤에 논리가 어떻게 될지 확실하지 오전하지만 당신은 .. 을 경기를 가져온 다음 ""로 [^ t] 교체하고 길이를 확인하실 수 있습니다 ;)
* [답변 수락] (http://meta.stackexchange.com/a/5235/163680) 이미 * – Qtax