Мое правило выглядит так
<ExtensionPoint xsi:type="DetectedEntity">
<Label resid="contextLabel" />
<SourceLocation resid="testResId" />
<Rule xsi:type="RuleCollection" Mode="And">
<Rule xsi:type="RuleCollection" Mode="Or">
<Rule xsi:type="ItemIs" ItemType="Message" />
<Rule xsi:type="ItemIs" ItemType="Appointment" />
</Rule>
<Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="Test" RegExValue="\+1" PropertyName="BodyAsPlaintext" Highlight="All"/>
</Rule>
</ExtensionPoint>
как вы можете видеть, регулярное выражение ищет +1
для выделения (мое настоящее регулярное выражение делает больше, но этого примера достаточно, чтобы воспроизвести проблему)
Похоже, поиск работает, так как он возвращает результаты, но я вижу ошибки в консоли разработчика, и выделения не происходит. Я предполагаю, что Outlook использует фактические совпадения, чтобы выделить и поместить их в новое регулярное выражение (которое на самом деле не может начинаться со знака плюс). Исключение составляют:
constants.ts:1 Uncaught (in promise) SyntaxError: Invalid regular expression: /+1/: Nothing to repeat
at new RegExp (<anonymous>)
at constants.ts:1
at Array.forEach (<anonymous>)
at markElements.ts:54
at AAQkADAzYTZlYTYyLWQyMGMtNDFhOS05MTAzLTQyYjJhNjBhMTYwZgAQAINoPf%2BPCdhNj6AVUpiXz4w%3D:347
at Object.next (AAQkADAzYTZlYTYyLWQyMGMtNDFhOS05MTAzLTQyYjJhNjBhMTYwZgAQAINoPf%2BPCdhNj6AVUpiXz4w%3D:347)
at a (AAQkADAzYTZlYTYyLWQyMGMtNDFhOS05MTAzLTQyYjJhNjBhMTYwZgAQAINoPf%2BPCdhNj6AVUpiXz4w%3D:347)
Я не нашел никакой документации на сайтах разработки офисных надстроек, если / как мне избежать их. Любая идея?
plus1
недопустимое регулярное выражение! Вам нужно экранировать\+
, поскольку+
в регулярном выражении - это специальный символ. - person BladeMight   schedule 02.04.2020"\"
:RegexValue="\\+1"
? - person BladeMight   schedule 02.04.2020+
в[]
- person BladeMight   schedule 02.04.2020.\+1
, но он либо не нашел текст, либо имел ту же ошибку. - person kuzditomi   schedule 03.04.2020