MATLAB: Logical indexing for row-wise average

MATLABmean

How can I get a row-wise mean of this matrix
1 2 3
A = 4 5 6
7 8 9
but I only want to select these entries
0 1 1
B = 1 1 0
1 0 1
so the result would be something like
2.5
C = 4.5
8.0
Actually, this is easily possible with a loop, but I'd prefer a 1-line code. (this one is just a question of beauty :-))

Best Answer

C=sum(A.*B,2)./sum(B,2);