Функция надстройки Outllook getRegExMatches () всегда возвращает ноль - PullRequest
0 голосов
/ 20 сентября 2019

Я пытаюсь разработать надстройку для Outlook, которая находит выражение с регулярным выражением в теле письма, но getRegExMatches () всегда дает мне ноль.

Я не знал, как это сделать, поэтому я попробовал пример в https://docs.microsoft.com/en-us/office/dev/add-ins/reference/objectmodel/requirement-set-1.5/office.context.mailbox.item?product=outlook&version=v1.5#getregexmatches--object

код для правил примера:

<Rule xsi:type="RuleCollection" Mode="And">
  <Rule xsi:type="ItemIs" FormType="Read" ItemType="Message" />
  <Rule xsi:type="RuleCollection" Mode="Or">
    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="fruits" RegExValue="apple|banana|coconut" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
    <Rule xsi:type="ItemHasRegularExpressionMatch" RegExName="veggies" RegExValue="tomato|onion|spinach|broccoli" PropertyName="BodyAsPlaintext" IgnoreCase="true" />
  </Rule>
</Rule>

и вjavascript Я могу назвать это правило следующим образом:

var allMatches = Office.context.mailbox.item.getRegExMatches();
var fruits = allMatches.fruits;
var veggies = allMatches.veggies;

. var allMatches - это то, что дает мне ноль, из-за того, что другие 2 переменные выдают ошибку.Это должно было дать массив со строками, которые должны быть равны строкам в правилах (например, яблоко, банан и т. Д.).

...