J'utilise l'expression rationnelleExpression régulière, Éclate une chaîne par lettre majuscule, mais ignorer TLA
System.Text.RegularExpressions.Regex.Replace(stringToSplit, "([A-Z])", " $1").Trim()
pour diviser les chaînes par lettre majuscule, par exemple:
« MyNameIsSimon » devient « Mon Le nom est Simon '
Je trouve cela incroyablement utile lorsque vous travaillez avec des énumérations. Ce que je voudrais faire est de changer légèrement pour que les chaînes ne sont séparés si le suivant lettre est une lettre minuscule, par exemple:
« USAToday » deviendrait « USA Today »
Est-ce que cela peut être fait?
EDIT: Merci à tous pour votre réponse. Je n'ai peut-être pas entièrement réfléchi à cela, dans certains cas, «A» et «I» auraient besoin d'être ignorés, mais ce n'est pas possible (du moins pas de manière significative). Dans mon cas, les réponses ci-dessous font ce dont j'ai besoin. Merci!
Hmmm ... ce n'est peut-être pas aussi simple qu'on le pensait au début - que diriez-vous d'une chaîne comme "TodayILiveInTheUSAWithSimon" - les deux réponses actuelles échoueront pour cela. –
Bon point. Je peux probablement contourner cela dans ce cas. – Simon