learz Ответов: 1

Как извлечь значения из строки между разделителями


извлекайте значения из строки между разделителями (/) , но сохраняйте (\/)

string = " a/b\ / c / d"

Ожидаемый результат
['a', 'b\\ / c', 'd']

Что я уже пробовал:

string = " a/b\ / c / d"
строку.сплит('/')
['a', ' b\\', 'c', 'd']

1 Ответов

Рейтинг:
2

Jochen Arndt

Вы можете использовать регулярное выражение split:

import re

string = "a/b\/c/d"
print string.split('/')

pattern = "(?<!\\\\)/"
print re.split(pattern, string)

Выход:
['a', 'b\\', 'c', 'd']
['a', 'b\\/c', 'd']

(?<!\\\\)/: Совпадает, если текущей позиции в строке не предшествует совпадение для обратной косой черты.