Cuando te digo que es casualidad que la tarea haga lo esperado en esos tres supuestos es porque no era mi intención que fuese así. Simplemente hice una "traducción" casi literal del proceso manual al automático sin mirar nada más.
No le des más vueltas. Añadiendo la condición que has propuesto ya no existe posibilidad de que se quede en un bucle sin salida. Esa parte está resuelta.
Y eso también soluciona mi segundo escenario no previsto (repetición sin datos) ... %dats no devuelve nada.
Algunas veces me asusto de lo finas que me salen las tareas, hasta sin querer afinarlas ...

Cita: Originalmente Escrito por
GraphicAdventure
Sobre el regex es una expresión que cubra estos 3 supuestos.
El problema es el ,a,b,b,c,b,

Entonces tu intención es hacer una expresión que resuelva el problema de una tacada y se te está resistiendo ese caso en concreto ¿...?
Pues regex no es que sea mi fuerte, pero si te puedo ayudar deja caer por aquí esa expresión y le damos vueltas.