c#中的正则表达式可以匹配新行或忽略它
Regex in c# that could either match new line or ignore it
C# 中的正则表达式相对较新。努力做到这一点。
要求:
输入字符串格式:一些随机文本 XXXX 造成 XXXX 小时返工的干扰。由于 XXXX
中报告了一些随机文本
我需要从输入中获取所有 3 XXXX。
具体例子:
某些门户中列出的投诉如下所示 RequirementChanges 造成 200 小时[ 的干扰=37=] 的返工。因此,在 Excel.
中报告了一个请求
我的正则表达式应该给出结果:
RequirementChanges , 200 小时, Excel.
有关输入字符串的附加信息是:
仅造成干扰,返工,reported in 将始终存在于输入字符串中。剩下的可以是任何随机文本,换行符可以在中间的任何地方,除了这 3 个常量字符串。
我打算在 c# 中解析这个输入字符串。请求您的意见。谢谢,
使用\s+
匹配所有类型的垂直和水平换行符。它与 \S+
相反,会匹配一个或多个非 space 字符。
@"\S+(?=\s+caused disturbance)|\S+\s+\S+(?=\s+of rework)|(?<=\breported in\s+)\S+"
代码:
String input = @"Complaint listed in some portal is like below RequirementChanges caused disturbance of 200 hours of rework. Due to this there is a request reported in Excel.";
Regex rgx = new Regex(@"\S+(?=\s+caused disturbance)|\S+\s+\S+(?=\s+of rework)|(?<=\breported in\s+)\S+");
foreach (Match m in rgx.Matches(input))
Console.WriteLine(m.Groups[0].Value);
C# 中的正则表达式相对较新。努力做到这一点。
要求:
输入字符串格式:一些随机文本 XXXX 造成 XXXX 小时返工的干扰。由于 XXXX
中报告了一些随机文本我需要从输入中获取所有 3 XXXX。
具体例子: 某些门户中列出的投诉如下所示 RequirementChanges 造成 200 小时[ 的干扰=37=] 的返工。因此,在 Excel.
中报告了一个请求我的正则表达式应该给出结果: RequirementChanges , 200 小时, Excel.
有关输入字符串的附加信息是: 仅造成干扰,返工,reported in 将始终存在于输入字符串中。剩下的可以是任何随机文本,换行符可以在中间的任何地方,除了这 3 个常量字符串。 我打算在 c# 中解析这个输入字符串。请求您的意见。谢谢,
使用\s+
匹配所有类型的垂直和水平换行符。它与 \S+
相反,会匹配一个或多个非 space 字符。
@"\S+(?=\s+caused disturbance)|\S+\s+\S+(?=\s+of rework)|(?<=\breported in\s+)\S+"
代码:
String input = @"Complaint listed in some portal is like below RequirementChanges caused disturbance of 200 hours of rework. Due to this there is a request reported in Excel.";
Regex rgx = new Regex(@"\S+(?=\s+caused disturbance)|\S+\s+\S+(?=\s+of rework)|(?<=\breported in\s+)\S+");
foreach (Match m in rgx.Matches(input))
Console.WriteLine(m.Groups[0].Value);