Рейтинг:
1
Kenneth Haugland
Просто сделай это:
string[] result = Regex.Split(str, "[$]");
Оператор [ ] представляет класс символов, поэтому регулярное выражение пытается сопоставить все, что находится внутри этих скобок.
Для кратного $ (2 в данном случае):
string[] result = Regex.Split(str, "[$]{2}");
Рейтинг:
0
xpertzgurtej
с одним $ это работает. но для :
строка str = "12$$34$$45";
строка [] результат= регулярное выражение.Сплит(ул., @"\$$");
это не работает. Как с этим справиться?
На самом деле я хочу разделить свою строку, и разделитель может состоять из нескольких символов.
напр.:
строка str = "12$$34$$45";
строковый разделитель = "$~$";
строка [] результат= регулярное выражение.Сплит(ул., @"\"+ разделитель + "");
Kenneth Haugland
Вам нужно \ перед всеми временами, когда вы собираетесь соответствовать специальному случаю $
строка[] результат = регулярное выражение.Сплит(ул., @"\$\$");
Patrice T
Пробовать @"\$+"
xpertzgurtej
Я нашел решение:
строка str = "12$$34$$45";
строковый разделитель = "$$";
string[] partsFromString = str.Split(new string[] { separator }, StringSplitOptions.None);
Richard MacCutchan
Немного лучший способ был бы
string[] partsFromString = str.Split(new Char[] {'$'}, StringSplitOptions.RemoveEmptyEntries);
Поскольку это позволяет любое количество знаков доллара.
xpertzgurtej
сепаратор не фиксирован. Поэтому я не могу использовать {'$'}
Richard MacCutchan
Ну, это не проблема. Вы просто вводите символ-разделитель откуда-то еще.