Вставка символа между двумя другими символами в Vim

Даже после раскрытия всех объектов, текстов (строк и одиночных символов )нет необходимости представлять в ASCII, они могут быть закодированы в шестнадцатеричном -.

Чтобы найти текст, выполните следующие действия:

  1. В расширенном PDF-файле найдите все ключи с именем /Contents. Это может выглядеть так:

    /Contents 8 0 R
    

    Это говорит о том, что содержимое соответствующей страницы находится в объекте номер 8.

  2. Перейти к объекту номер 8. Его можно найти, выполнив поиск по строке'8 0 obj'

  3. В следующих строках, заключенных в скобки строками stream... endstream, если вы видите в конце строки одно из...

    ... TJ, Tj,'или"

    у вас будет текст, показывающий, что оператор работает.

  4. Предыдущая строка содержит текст, но может выглядеть так:

    [(H)0.0976563(e)0.0976563(l)-599.902(l)0.0976563(o)0.0976563(W)0.0976563(o)-599.902(r)0.0976563(l)0.0976563(d)0.0976563(!)]TJ
    

    Эй, тебе повезло! Можете ли вы расшифровать "Hello World!" строка здесь? Промежуточные числа предназначены только для управления размещением отдельных символов....

  5. ....а теперь я перестану учить PDF. Вы можете прочитать все подробности в официальной спецификации формата PDF :-)

    .

    Еще одна подсказка :, если вы ищете
    мой другой PDF -связанные ответы на StackOverflow ,

    Вы можете обнаружить немало примеров, в которых более подробно рассматривается, как читать код PDF.

0
14.12.2020, 22:27
1 ответ
:%s/\(\D\)\(\d\)/\1\r\2/g
  • \(\)— группы захвата. То, что в них запечатлено, воспроизводится \1и \2.

  • \D— цифра, отличная от -, \d— цифра.

  • \rстановится символом новой строки в Vim.

Это упрощается с помощью магического режима регулярного выражения, включенного с помощью\v:

:%s/\v(\D)(\d)/\1\r\2/g
3
18.03.2021, 22:42

Теги

Похожие вопросы