Я пытался получить команду # регулярное выражение C, чтобы включить что-то вродеC# String - Сплит Pascal Case
EYDLessThan5Days
в
EYD Less Than 5 Days
Любые идеи?
Код я использовал:
public static string SplitPascalCase(this string value) {
Regex NameExpression = new Regex("([A-Z]+(?=$|[A-Z][a-z])|[A-Z]?[a-z0-9]+)",
RegexOptions.Compiled);
return NameExpression.Replace(value, " $1").Trim();
}
Out:
EYD Less Than5 Days
Но все-таки дать мне неправильный результат.
На самом деле, я уже спрашивал об этом в javascript-коде, но когда я реализовал код C# с такой же логикой, это не удалось.
Пожалуйста, помогите мне. Благодарю.
я думаю, что он не хочу отделяться 5. –
Я не совсем уверен, о чем вы просите - вам был дан очень подробный ответ в http://stackoverflow.com/questi ons/26188882/split-pascal-case-in-javascript-some-case, вместо того, чтобы напрямую преобразовывать его в C#, вы несколько случайно объединили части и теперь ищете какую-то помощь. Я рекомендую вам выполнить прямое преобразование и попросить «как объединить следующее регулярное выражение» (если вы не смогли сделать это самостоятельно). Также подумайте о том, чтобы сохранить качество образца кода, сравнимого с одним в этом ответе, - регулярные выражения без комментариев в основном нечитаемы. –
Его так же просто удалить любую ссылку на [0-9] и поставить ее в отдельное чередование. См. @AmitJoki regex '([AZ] + (? = $ | [AZ] [az]) | [AZ]? [Az] + | [0-9] +)' – sln