Это моя строка
String s = "asadsdas357902||190||RUE RACHELLE||ST|||LES CÈDRES|J7T1J9|QC";
Я разделил ее на
String a[] = s.split(s, i);
вывод: i = 0
| | 1 9 0 | | R U E R A C H E L L E | | S T | | | L E S C È D R E S | J 7 T 1 J 9 | Q C
Первые два индекса массива пустыТогда каждый индекс имеет один символ.
Когда i = 1, выводом является вся исходная строка
asadsdas357902||190||RUE RACHELLE||ST|||LES CÈDRES|J7T1J9|QC
, когда i = 2, выводом является
||190||RUE RACHELLE||ST|||LES CÈDRES|J7T1J9|QC
первый индекс массива пуст, а второй содержит подстроку из первого | символа
, когда i = 3, вывод равен
||190||RUE RACHELLE||ST|||LES CÈDRES|J7T1J9|QC
первые два индекса пусты и последнийindex имеет ту же подстроку, что и для i = 2
, когда i = 4, выходные данные равны
| |190||RUE RACHELLE||ST|||LES CÈDRES|J7T1J9|QC
первые два индекса пусты, следующий содержит канал и последний - остальные
когда i = 5, вывод равен
| | 190||RUE RACHELLE||ST|||LES CÈDRES|J7T1J9|QC
первые два пустых, следующие два символа канала и последний оставшийся.
при увеличении значения i вывод
first two indexes empty
next all indexes except last contains one character each
last index contains the remaining string
Мои вопросы
- Почему он не учитывает первое слово перед первым символом канала?
- Почему он делает первые два индекса пустыми для каждогозначение i, кроме 1?
- Шаблон - та же самая строка здесь, так что здесь соответствует и как выходы?
И еще одна вещь, если я заменю pipe символ с любым другим символом, например @ или!или% , вывод составляет
array length is 2 with both indexes has empty strings. this is for i>=2
для i = 0
the array length is also 0
для i = 1
the array length is 1 containing the whole string.
Принимает ли pipe символ как специальный символ регулярного выражения?
Любая помощь заметна.