Это похоже ?
во многих других механизмах регулярного выражения, и означает "нуль соответствия или одно из того, что прибыло перед ним".
В Вашем примере, \?
относится [ -]
, значение его пытается соответствовать пространству или минус, но что пространство или минус является дополнительным.
Таким образом, любой из них будет соответствовать:
555 1234
555-1234
5551234
Причина это записано как \?
вместо ?
для назад совместимости.
Исходная версия grep
используемый другой тип регулярного выражения назвал "основное регулярное выражение" где ?
просто предназначенный литеральный вопросительный знак.
Так, чтобы GNU grep мог иметь нуль или одну функциональность, они добавили его, но должны были использовать \?
синтаксис так, чтобы сценарии, которые использовали ?
все еще работавший как ожидалось.
Обратите внимание, что grep имеет -E
опция, которая заставляет его использовать более общий тип регулярного выражения, названного "расширенными регулярными выражениями".
man 1 grep
:
-E, --extended-regexp
Interpret PATTERN as an extended regular expression
(ERE, see below). (-E is specified by POSIX.)
-G, --basic-regexp
Interpret PATTERN as a basic regular expression (BRE, see below).
This is the default.
...
Repetition
A regular expression may be followed by one of several repetition operators:
? The preceding item is optional and matched at most once.
...
grep understands three different versions of regular expression syntax:
“basic,” “extended” and “perl.”
...
Basic vs Extended Regular Expressions
In basic regular expressions the meta-characters ?, +, {, |, (, and )
lose their special meaning; instead use the backslashed versions
\?, \+, \{, \|, \(, and \).
Дальнейшая информация:
Я рекомендовал бы пытаться решить проблему LibreOffice, но если это не работает, Вы услышали о Abiword? Это является более старым, чем проект OpenOffice.org и является подобным MS Word (предленточные версии) или Устройство записи от комплекта LibreOffice.
Другая идея, если Вы знакомы с ЛАТЕКСОМ, состоит в том, чтобы попробовать одного из тех почти (или не совсем так почти) WYSIWYG-редакторы как Kile (KDE), LyX (Спокойные зависимости), или Texmaker (QT).
Протест: Я не использовал ни одной из вышеупомянутых частей программного обеспечения потому что LibreOffice и прямо pdflatex
были достаточно для всего, что я должен был сделать до сих пор.
Вы, вероятно, смогли бы запустить новый экземпляр Устройства записи при создании отдельного пользователя. Кроме того, попробуйте KWord.