Verwenden Sie thi s regex (ich habe vergessen, aus der Antwort Stackoverflow ich es stammt, wird es suchen jetzt):
public static string ToLowercaseNamingConvention(this string s, bool toLowercase)
{
if (toLowercase)
{
var r = new Regex(@"
(?<=[A-Z])(?=[A-Z][a-z]) |
(?<=[^A-Z])(?=[A-Z]) |
(?<=[A-Za-z])(?=[^A-Za-z])", RegexOptions.IgnorePatternWhitespace);
return r.Replace(s, "_").ToLower();
}
else
return s;
}
ich es in diesem Projekt verwenden: http://www.ienablemuch.com/2010/12/intelligent-brownfield-mapping-system.html
[EDIT]
ich es gefunden jetzt: How do I convert CamelCase into human-readable names in Java?
Schön split "TodayILiveInTheUSAWithSimon", kein Platz auf der Vorderseite der "Heute":
using System;
using System.Text.RegularExpressions;
namespace TestSplit
{
class MainClass
{
public static void Main (string[] args)
{
Console.WriteLine ("Hello World!");
var r = new Regex(@"
(?<=[A-Z])(?=[A-Z][a-z]) |
(?<=[^A-Z])(?=[A-Z]) |
(?<=[A-Za-z])(?=[^A-Za-z])", RegexOptions.IgnorePatternWhitespace);
string s = "TodayILiveInTheUSAWithSimon";
Console.WriteLine("YYY{0}ZZZ", r.Replace(s, " "));
}
}
}
Ausgang:
YYYToday I Live In The USA With SimonZZZ
Splitting schlägt vor, dass Sie ein Array von Zeichenfolgen möchten, aber es sieht so aus, als ob Sie lieber Leerzeichen in die Zeichenfolge einfügen möchten? – Guffa