Ich teile eine string
mit Regex mit seiner Split()
Methode.C# Regex split() ohne Entfernen der geteilten Bedingung Zeichen
var splitRegex = new Regex(@"[\s|{]");
string input = "/Tests/ShowMessage { 'Text': 'foo' }";
//second version of the input:
//string input = "/Tests/ShowMessage{ 'Text': 'foo' }";
string[] splittedText = splitRegex.Split(input, 2);
Die string
ist nur ein Abtastmuster des Eingangs. Es gibt zwei verschiedene Strukturen von input
, einmal mit einem Leerzeichen vor der {
oder ohne Leerzeichen. Ich möchte die input
auf der {
Klammer, um spalten das folgende Ergebnis zu erhalten:
- /Tests/Showmessage
- { 'Text': 'foo'}
Wenn es eine Platz, die Saite wird dort aufgeteilt (Platz wird entfernt) und ich bekomme mein gewünschtes Ergebnis. Aber wenn es keinen Platz gibt, spalte ich die Zeichenfolge auf {
, so dass die {
entfernt wird, was ich aber nicht will. Wie kann ich Regex.Split()
verwenden, ohne das Zeichen der geteilten Bedingung zu entfernen?
Verwenden Sie ['@" \ s * (? = {) "'] (Https://ideone.com/QASSyI). –