Regex que empareja demasiado

(\[(c|C)=)(#?([a-fA-F0-9]{1,2}){3})\](.*)\[/(c|C)\]

Quiero que esta expresión coincida con el texto como: "Este es [c = FFFFFF] texto en blanco [/ c] y [C = # 000] texto en negro [/ C]".

Solo coincide con un código BB, pero si hay más uno detrás del otro (como en el ejemplo), se creará una coincidencia (1 coincidencia) de ambas secuencias de códigos BB. (de [c = FFFFFF] wh ... to ... ck text [/ C])

¿Por qué está pasando esto? Además, ¿cómo puedo hacer que el punto (.) Incluya nuevas líneas en C #?

Respuestas a la pregunta(5)

Su respuesta a la pregunta