вопрос, связанный с this
У меня есть строка
a\;b\\;c;d
, которая в Java выглядит как
String s = "a\\;b\\\\;c;d"
Мне нужно разделить его точкой с запятой по следующим правилам:
Если точке с запятой предшествует обратная косая черта, ее не следует рассматривать как разделитель (между a и b ).
Если обратная косая черта экранируется и, следовательно, не экранируется точкой с запятой, эта точка с запятой должна быть разделителем (между b и c ).
Таким образом, точку с запятой следует рассматривать как разделитель, если перед ней стоит ноль или четное количество обратных косых черт.
Например, я хочу получить следующие строки (двойные обратные косые черты для компилятора java):
a\;b\\
c
d