import re
pattern = r"\b [A-Z].*?\d {1,2}\. \d {1,2}\. \d {2,4}(?=\s +[A-Z]|$)"
s = ( "N678 à p. du 11.6.23 C+23.6.23 N−14.,24.7.23\n \n "
"N678 N−12.,13.12.22,18.,19.,31.1.,9.2.,7. au 10.,13. au 17.,20.,21.,22.,28.\n "
"au 31.3.,6.,13.,19.,20.4.,5.,8.5.23\n \n "
"N68 du 12.6. au 3.9.23 C+23.6.,15.8.23 N-18.,25.6.,2.,17. au 21.,23. au 28.,31.7.,3.,4.,7.,8.,9.,27.8.23\n \n \n " )
print ( re .findall ( pattern, s, re .M ) )
aW1wb3J0IHJlCgpwYXR0ZXJuID0gciJcYltBLVpdLio/XGR7MSwyfVwuXGR7MSwyfVwuXGR7Miw0fSg/PVxzK1tBLVpdfCQpIgoKcyA9ICgiTjY3OCDDoCBwLiBkdSAxMS42LjIzIEMrMjMuNi4yMyBO4oiSMTQuLDI0LjcuMjNcblxuIgoJIk42NzggTuKIkjEyLiwxMy4xMi4yMiwxOC4sMTkuLDMxLjEuLDkuMi4sNy4gYXUgMTAuLDEzLiBhdSAxNy4sMjAuLDIxLiwyMi4sMjguXG4iCgkiYXUgMzEuMy4sNi4sMTMuLDE5LiwyMC40Liw1Liw4LjUuMjNcblxuIgoJIk42OCBkdSAxMi42LiBhdSAzLjkuMjMgQysyMy42LiwxNS44LjIzIE4tMTguLDI1LjYuLDIuLDE3LiBhdSAyMS4sMjMuIGF1IDI4LiwzMS43LiwzLiw0Liw3Liw4Liw5LiwyNy44LjIzXG5cblxuIikKCnByaW50KHJlLmZpbmRhbGwocGF0dGVybiwgcywgcmUuTSkp
stdout
['N678 à p. du 11.6.23', 'C+23.6.23', 'N−14.,24.7.23', 'N68 du 12.6. au 3.9.23', 'C+23.6.,15.8.23', 'N-18.,25.6.,2.,17. au 21.,23. au 28.,31.7.,3.,4.,7.,8.,9.,27.8.23']