Я делаю простой поиск и замену в Perl, но мне нужна помощь. Эти строки в файле:Нужна помощь с жадным квантификатором
1001(seperator could be "anything")john-1001(seperator could be "anything")mark
1001(seperator could be "anything")mark-1001(seperator could be "anything")john
Я хочу назначить новый идентификатор пользователя для сортира, как 2001, так что это результат я хочу:
2001($1)john-1001-mark
1001-mark-2001($1)john
Моего регулярного выражение прекрасно работает, когда Джон первый, но когда знак первый, он становится испорченным.
Упорядочить по регулярному выражению, которое вы используете? –
Нам нужна дополнительная информация о данных и фиксированных/переменных частях того, что вы пытаетесь найти и заменить. Все ли идентификаторы четыре цифры? Является ли «-» всегда разделителем? Вы знаете номер (1001), имя (john), оба? –
Есть ли всегда два пользователя в строке, разделенные -? когда вы говорите, что разделитель сильно меняется, что вы имеете в виду? Ключ достаточно знать о разделителе, чтобы иметь возможность отличить его от данных; например «1001, foo-1000, bar-999; baz» запись foo/baz (w/separators »;» и «bar-999;») или запись bar/baz (с разделителями), foo-1000 ;" а также ";") ? – ysth