Регулярное выражение Java и sed не одно и то же…?

Получить эти строки:

00543515703528
00582124628575
0034911320020
0034911320020
005217721320739
0902345623
067913187056
00543515703528

Применить это выражение в java: ^ (06700 | 067 | 00) ([0-9] *) .

Мое намерение состоит в том, чтобы удалить ведущие «06700, 067 и 00» из начала строки.

Это все круто в java, группа 2 всегда имеет номер, который я собираюсь использовать, но в sed это не одно и то же:

$ cat strings|sed -e 's/^\(06700|067|00\)\([0-9]*\)/\2/g'
00543515703528
00582124628575
0034911320020
0034911320020
005217721320739
0902345623
067913187056
00543515703528

Какого черта мне не хватает?

Ура,

е.

5
задан filippo 18 May 2011 в 12:12
поделиться