我创建了一个自动化的电源自动化流程,它在任何收到的电子邮件上执行并执行
unbound action
一
custom action
“ValidateEmailBody”用C#编写,并在CRM插件注册中注册。
我正在使用自定义regex读取预定义模板中传递的值,到目前为止,它运行良好,但现在我想让它与用户几乎不兼容。
这里的要求是-
修剪前面和后面的空间
它们是由邮件发送者错误地添加的,以便自定义操作可以正确地获取记录。
以下是给定正则表达式的工作模板:
Regex
:
var templatePattern = new Regex(@"Case title:[ ]{1,}(?<caseTitle>.*?)\n{1,}Client:[ ]{1,}(?<client>.*?)\n{1,}Origin:[ ]{1,}(?<origin>.*?)\n{1,}Contact:[ ]{1,}(?<contact>.*?)\n{1,}DSM:[ ]{1,}(?<dsm>.*?)\n{1,}CSM:[ ]{1,}(?<csm>.*?)\n{1,}Assigned To:[ ]{1,}(?<assignedTo>.*?)\n{1,}Due Date:[ ]{1,}(?<dueDate>.*?)\n{1,}Description:[ ]{1,}(?<desc>.*?)$");
正则表达式的解释
:
[]{1,} -> Can have one or more spaces
?<groupName>.*? -> Creates a group name to extract the word(s)
\n{1,} --> Allows one or more new line
$ --> End of line
样板
:
案例标题:样本测试案例9
客户:8688211
来源:电子邮件
联系
[email protected]
DSM:testContact1
CSM:testContact1
分配给:
[email protected]
到期日期:2023年6月28日
说明:样品说明9
现在,我想从值中修剪多余的空格,然后读取中的值
C
例如,请参考以下模板:
新的可能模板
:
案例标题:样本测试案例9
客户:8688211
来源:电子邮件
联系
[email protected]
DSM:testContact1
CSM:testContact1
分配给:
[email protected]
到期日期:2023年6月28日
说明:样品说明9
为了实现这一点,我需要对自定义操作或regex进行哪些更改?
仅供参考,我之所以阅读这个值,是因为基于此,我需要在CRM中创建一个新记录,所以如果有额外的空格或新行,我将停止这样做。
提前谢谢。