Сообщение от sitesv
|
Aetae, спасибо!!!!
Это регулярное выражение?
|
Да.
Сообщение от sitesv
|
Я не могу понять как интерпретировать его.
|
Такое часто бывает с регулярками.)
Тут особая хитрость. String.split разбивает строку на массив по другой строке либо регулярке.
x(?=y) - найти x, за которым следует y(но не включая его)
. - любой символ(кроме переносов строки)
(?:x) - незапоминающие скобки, нужные только для группирования.
+ - множитель: 1 или более раз.
$ - конец строки.
Поскольку перед
(?=y) нет никакого
x -
x равен пустой строке:
''.
И того:
String.split(/(?=(?:..)+$)/)
Разбить строку по пустой строке, за которой повторяются один или более раз два любых символа до тех пор пока не упрутся в конец строки.
Соответственно сначала он находит
''(?=0102030405060708090A0B0C), потом ''(?=2030405060708090A0B0C) итд.