Regex Expression Escape Персонажи - PullRequest
0 голосов
/ 29 ноября 2018

У меня возникли трудности с получением выражения для работы.У меня все работает, если не исключены символы конца строки и косые черты.

The Server Job .([^\\]*).([^\\]*).([^\\]*) has Completed Abnormally on the Server Master (.*)\.\n\nJOB ID: (\d+)\n\nFollow Batch abend and escalation procedures. https://regex101.com/r/5TrEBB/1

Пример текста:

The Server Job \FACET\Batch\SERV1254 SERVER IGX OUTPUT FILES CREATION has Completed Abnormally on the Server Master SER130P.

JOB ID: 10560914

Follow Batch abend and escalation procedures.

Однако мне нужноэто работает с обоими примерами текста, например так:

The Server Job \\FACET\\Batch\\SERV1254 SERVER IGX OUTPUT FILES CREATION has Completed Abnormally on the Server Master SER130P.\n\nJOB ID: 10560914\n\nFollow Batch abend and escalation procedures.

Обратите внимание на escape \ и \ n.Это в основном и если один или два слеша и если разрыв строки или \ n \ n.

1 Ответ

0 голосов
/ 29 ноября 2018

Следующее работает с обоими:

The Server Job (?:\\|\\\\)([^\\]*)(?:\\|\\\\)([^\\]*)(?:\\|\\\\)([^\\]*) has Completed Abnormally on the Server Master (.*)\.(?:\n\n|\\n\\n)JOB ID: (\d+)(?:\n\n|\\n\\n)Follow Batch abend and escalation procedures.

Если у вас есть возможный экранированный / не экранированный персонаж, используйте группу или или избегайте ее захвата.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...