Use the rectangle method if you've been given terminals, Gibbo. Otherwise it's beyond the scope of 2u.
Here is an explanation of the method these monkeys used, though:
Here is the product rule which you should know from 2unit:
d(uv)/dx=u*d(v)/dx + v*d(u)/dx, where u and v are both functions of x.
Let us represent this as: (uv)'=uv'+u'v
Integrate both sides: uv=Int(uv')+Int(u'v)
Move one integral to one side: Int(uv')=uv-Int(u'v)
Now, in the case of lnx, we can represent this as (x)'*lnx
Thus Int(lnx) = Int(lnx * (x')) = x*lnx - Int(1/x * x) = xlnx-x
Because for lnx=(x)'lnx, v'=1, v=x, u=lnx