This topic created in 2654 days ago, the information mentioned may be changed or developed.
To: =?GB2312?B?s8LR9A==?= , =?GB2312?B?0e7V8buq?= , =?GB2312?B?ts69qNOi?= , =?GB2312?B?wO7RxcX0?= , =?GB2312?B?wfXX07vU?= Cc: =?GB2312?B?wfXA2g==?= , =?GB2312?B?wfW7qNHT?= Subject: =?GB2312?B?u9i4tDogu9i4tDogcGPXqNawvNK9zMrTxrVidWc=?=
如何匹配 To 到 Cc:之间的字符串,Cc:有时候可能不存在,所以不能用 To:( =\?.*\?= )Cc:,想了半天没想出来,求解答,谢谢
12 replies • 2019-02-22 19:26:28 +08:00
 |
|
1
xiangyuecn Feb 22, 2019 1
邮件头格式还是蛮复杂的,可能跨多行
To: ([^\r\n]+(?:\r\n\s+[^\r\n]+)*)
|
 |
|
2
Telegram Feb 22, 2019 1
注意冒号:
=\?[^:]*\?=
|
 |
|
3
Telegram Feb 22, 2019 1
从 To:开始,?=结尾,中间不能含有冒号:,问题解决
|
 |
|
4
laoyur Feb 22, 2019 1
To: (?:\s*=\?.+?\?=\s*,?)+
|
 |
|
6
Raisu Feb 22, 2019 via Android
用 split
|
 |
|
7
lastpass Feb 22, 2019 via Android
用 antlr
|
 |
|
9
bzw875 Feb 22, 2019
str = str.split('fuck:')[0] str = str.replace('To', '')
|
 |
|
11
junkman Feb 22, 2019
Only one addressee case failed :-(
|
 |
|
12
bzw875 Feb 22, 2019
str = str.split('Cc:')[0]; str = str.replace('To', ''); 不小心写错了,其实代码可以实现的地方,别用正则表达式,可读性差
|