Not the same, but idea that works anyway.
#!/bin/bash
i='y'
while [ $i${i:0:1} != n ]
do
# Command(s)
read -p " Again? Y/n " i
[[ ${#i} -eq 0 ]] && i='y'
done
Output:
Again? Y/n N
Again? Y/n Anything
Again? Y/n 7
Again? Y/n &
Again? Y/n nnsijf
$
Now only checks 1st character of $i read.