如何创建正则表达式

时间:2016-09-28 11:39:48

标签: regex

我有2种字符串,其中"消息:"和"优先级:"和其他没有它的人。

string str1 = [AE][1W] Message:test mesage Priority:Info
string str2 = test message

我想准备Regex表达式以检查"消息的存在:"和"优先级:"在字符串中。

以下不起作用,

(Message:[A-Za-z]\w+ Priority:[A-Za-z])\w+

应该是什么?

2 个答案:

答案 0 :(得分:1)

您可以将正则表达式更改为:

(Message:[A-Za-z]+ \w+ Priority:[A-Za-z])\w+

让它发挥作用。但是我写得像:

Message:(\w+[ ]?)+Priority:(\w+[ ]?)+

因此MessagePriority之后可能会有超过1个字。

答案 1 :(得分:0)

参考https://wordpress.org/support/plugin/woo-custom-emails/

string str = "[AE][1W] Message:test message Priority:Info Time:Sep 22 2016  11:59PM Tag:/System Compon/  Source:CONSOLE STATION  IsAck:1 IsRtn:0 IsNew:1";

试试这个:

Message:([\w\s]+)Priority:([\w\s]+)Time:([\w\s:]+)Tag:([/\w\s]+)Source:([\w\s]+)IsAck:([\w\s]+)IsRtn:([\w\s]+)IsNew:([\w\s]+)
下面的

可能会更好:

Message:([\w\s]+)Priority:([\w\s]+)Time:([\w\s:]+)Tag:([/\w\s]+)Source:([\w\s]+)IsAck:(\d) IsRtn:(\d) IsNew:(\d)