At least Bech32 detects them pretty accurately and not only one at a time even. As far as I remember Bech32 can detect where an error is and pinpoint it
It is guaranteed to detect up to 4 errors, and has less than a 1 in a billion chance of failing to detect more errors than that.
If that's the case then please explain:
Addresses aren't designed to be hand written, but they should still be double checked after you have copy and pasted them. And excluding similar characters such as o and 0 helps to make the manual double checking process easier and more accurate.