Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 创建正则表达式以读取行_C# - Fatal编程技术网

C# 创建正则表达式以读取行

C# 创建正则表达式以读取行,c#,C#,我试图创建regex来阅读下面的语句 在监视器AAA-AAA_name of Place上查找所有可能在2015年7月2日星期四09:30:00运行的时间表 到目前为止已完成:: string name = @"^Finding all possible schedules that could run ?<Listname>(\w{3}\-\w{3}\_)+"; //got kinda lost here Regex reg = new Re

我试图创建regex来阅读下面的语句

在监视器AAA-AAA_name of Place上查找所有可能在2015年7月2日星期四09:30:00运行的时间表

到目前为止已完成::

 string name = @"^Finding all possible schedules that could run 
                ?<Listname>(\w{3}\-\w{3}\_)+"; //got kinda lost here 
 Regex reg = new Regex(name);
string name=@“^查找所有可能运行的计划
?(\w{3}\-\w{3}\\+”//我在这里迷路了
Regex reg=新的Regex(名称);
我想要什么

我想把这个
AAA-AAA_name of Place
作为一个输出,并将其分配到一个列表中。而且声明中的日期每次都可能不同。

给您:

var data = "Finding all possible schedules that could run at Thu Jul 02 09:30:00 EST 2015 on monitor AAA-AAA_NameOf Place";
string namePattern = @"(?<=monitor\s).*$";
Console.WriteLine(Regex.Match(data, namePattern).Value);
var data=“在AAA-AAA_地点监视器上查找所有可能在2015年7月2日星期四09:30:00运行的时间表”;
字符串namePattern=@”(?给您:

var data = "Finding all possible schedules that could run at Thu Jul 02 09:30:00 EST 2015 on monitor AAA-AAA_NameOf Place";
string namePattern = @"(?<=monitor\s).*$";
Console.WriteLine(Regex.Match(data, namePattern).Value);
var data=“在AAA-AAA_地点监视器上查找所有可能在2015年7月2日星期四09:30:00运行的时间表”;

string namePattern=@”(?您可以尝试以下正则表达式:

(.+? at )(?<Date>.+?)( on monitor )(?<NameOfPlace>.+)
(.+?at)(.+?)(监视器上)(.+)
它将生成两个命名组:
Date
NameOfPlace

请注意,它采用完全相同的格式

一旦您获得
日期
地点名称
,您就可以将它们分配到列表中


.

您可以尝试以下正则表达式:

(.+? at )(?<Date>.+?)( on monitor )(?<NameOfPlace>.+)
(.+?at)(.+?)(监视器上)(.+)
它将生成两个命名组:
Date
NameOfPlace

请注意,它采用完全相同的格式

一旦您获得
日期
地点名称
,您就可以将它们分配到列表中


.

这里有一个正则表达式,它在单词边界的开头查找一个字符,该字符重复三次,然后后跟破折号,然后同一个字符再重复三次,后跟下划线,然后在字符串末尾后跟任意数量的字符:

        string input = "Finding all possible schedules that could run at Thu Jul 02 09:30:00 EST 2015 on monitor AAA-AAA_NameOf Place";
        string pattern = @"\b(.)\1\1-\1\1\1_.+\Z";
        Match m = Regex.Match(input, pattern);
        if (m.Success)
        {
            Console.WriteLine(m.Value);
        }

下面是一个正则表达式,它在单词边界的开头查找一个字符,该字符重复三次,然后跟一个破折号,然后同一个字符再重复三次,然后跟一个下划线,然后在字符串的末尾跟任意数量的字符:

        string input = "Finding all possible schedules that could run at Thu Jul 02 09:30:00 EST 2015 on monitor AAA-AAA_NameOf Place";
        string pattern = @"\b(.)\1\1-\1\1\1_.+\Z";
        Match m = Regex.Match(input, pattern);
        if (m.Success)
        {
            Console.WriteLine(m.Value);
        }

你想要的输出是什么?我们需要关于该值如何显示的规则。它是否总是有一个破折号?破折号前后的值是否总是相同的?它是否总是有一个下划线?该空格是否实际存在?值是否总是在行的末尾?等等…值总是相同的,但字符将不同当然可以。只是为了更清楚地说明AAA-AAA(这种格式将始终存在,但可以是不同的字母表)。其中as
Nameof Place
可以有更多或更少的字符…下划线后面的值是否总是从那里到行尾?因为如果它有这样的空格,那么我们怎么知道值的结尾呢?@Idle\u注意它是行尾。您想要什么输出?我们需要关于该值如何显示的规则。是吗总是有一个破折号?破折号前后的值总是一样的吗?它总是有下划线吗?空格实际上在那里吗?值总是在行尾吗?等等…值总是一样的,但字符当然会不同。只是为了让它更清楚AAA-AAA\U(此格式将始终存在,但可以是不同的字母表)。其中as
Nameof Place
可以有更多或更少的字符…下划线后面的值是否总是从那里到行尾?因为如果它有这样的空格,那么我们怎么知道值的结尾呢?@Idle\u注意它是行尾。对不起,伙计,忘了提及日期会有所不同。@CannotFindSymbol正则表达式此示例使用的模式与日期无关。表示“监视器”一词是一种积极的态度就在您要查找的内容之前。@CannotFindSymbol:这会产生您想要的结果?对不起,伙计,忘了提及日期会有所不同。@CannotFindSymbol此示例使用的正则表达式模式与日期无关。后面说“监视器”一词是一种积极的态度就在您要查找的内容之前。@CannotFindSymbol:这会产生您想要的结果吗?