msdoc - Greple module for access MS office docx/pptx/xlsx documents


Version 1.06


greple -Mmsdoc pattern example.docx


This module makes it possible to search string in Microsoft docx/pptx/xlsx file.

Microsoft document consists of multiple files archived in zip format. String information is stored in "word/document.xml", "ppt/slides/*.xml" or "xl/sharedStrings.xml". This module extracts these data and replaces the search target.

By default, text part from XML data is extracted. This process is done by very simple method and may include redundant information.

Strings are simply connected into paragraph for .docx and .pptx document. For .xlsx document, single space is inserted between them. Use --separator option to change this behavior.

After every paragraph, single newline is inserted for .pptx and .xlsx file, and double newlines for .docx file. Use --space option to change.



Simply print all converted data. Additional pattern can be specified, and they will be highlighted inside whole text.

    $ greple -Mmsdoc --dump -e foo -e bar buz.docx

Specify number of newlines inserted after every paragraph. Any non-negative integer is allowed including zero.


Specify the separator string placed between each component strings.


Extract indented XML document, not a plain text.


Set indentation string. Default is | .


cpanm App::Greple::msdoc



Kazumasa Utashiro


Copyright 2018-2022 Kazumasa Utashiro.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.