В C#, я пытаюсь разделить следующую строкуЭффективный способ при помощи lookarounds для регулярных выражений расколоть
(hello)(world)(hello)(world)
в массив следующего формата
arr[0] = (
arr[1] = hello
arr[2] =)
arr[3] = (
arr[4] = world
arr[5] =)
arr[6] = (
arr[7] = hello
arr[8] =)
arr[9] = (
arr[10] = world
arr[11] =)
настоящее время я использую следующее регулярное выражение выражение для выполнения разделения и оно кажется медленным
Regex.Split(value1, @"(?<=\))|(?=\))|(?=\()|(?<=\()")
Я не специалист по регулярному выражению, но У меня есть ощущение, что может быть другое выражение регулярного выражения, которое обеспечивает одинаковые функциональные возможности эффективно.
Удивительно, если есть лучшие способы (более эффективные выражения регулярных выражений) для реализации того же раскола в C#?
Как насчет соответствия '[()] | [^()] +' вместо? – Gumbo
Regex.Split (значение1, @ "[()] | [^()] +") {string [7]} [0]: "" [1]: "" [2]: "" [3]: "" [4]: "" [5]: "" [6]: "" – infinity
Матч, не разделенный. – Gumbo