J'ai une entrée comme ceci test1.test2.part01
que je veux enlever à test1.test2
. La seule chose que je sais est que cela va se terminer par partxx
et probablement un point avant le partxx
. Cependant, il ne sera pas toujours à part. Un autre exemple d'entrée pourrait être testas1.tlp2.asd3.part10
qui, bien sûr devrait être dépouillé à testas1.tlp2.asd3
.C# regex. Correspondance optionnelle après chaîne
J'ai fait tout ça, pas de problème. Le problème est le point à la fin avant partxx
. Mon regex pour le moment est:
(.*)\.?part\d{1,2}
Mais il inclura le point dans le groupe. Je ne veux pas que le point soit dans le groupe. Le ci-dessous fonctionne comme je le veux, étant donné que le point existe, mais il ne sera pas toujours là.
(.*)\.part\d{1,2}
Comment puis-je exclure le point optionnel du groupe?
Merci, ne peut pas croire que j'ai raté. Même si je l'échappe ce sera dans le groupe –
Je soupçonne que cela inclura toujours le point dans le groupe puisque le quantificateur à l'intérieur du groupe est gourmand. '(. *?) \.? part \ d {1,2}' pourrait mieux fonctionner. –
@Tim Cela semblait faire l'affaire! :) Merci –