Regex 正则表达式两个字符串

Regex 正则表达式两个字符串,regex,Regex,我对正则表达式了解不多。我希望你能帮助我 我在一个文件中有一些文件的日期 Aug 15:07 file1.txt Jul 15:04 file2.txt Aug 15:05 file3.txt Aug 15:05 file4.txt Aug 2016 file5.txt Jul 15:09 file6.txt 我只想要以'Aug'开头并有时间(:)的文件 但是这样做会毫无例外地显示所有文件这将查找以'Aug:'开头的文件名,这不是您想要的 请改为尝试/^Aug[0-9]{1,2}://。它查找

我对正则表达式了解不多。我希望你能帮助我

我在一个文件中有一些文件的日期

Aug 15:07 file1.txt
Jul 15:04 file2.txt
Aug 15:05 file3.txt
Aug 15:05 file4.txt
Aug 2016 file5.txt
Jul 15:09 file6.txt
我只想要以'Aug'开头并有时间(:)的文件


但是这样做会毫无例外地显示所有文件

这将查找以'Aug:'开头的文件名,这不是您想要的

请改为尝试
/^Aug[0-9]{1,2}://
。它查找以下文件名:

  • 以“Aug”开头
  • 然后是一个或两个数字
  • 然后是结肠
另外,您正在运行的bash命令是什么


(您可以在regex101.com上测试您的正则表达式,它是一个很好的网站,或者;-)

这将查找以“Aug:”开头的文件名,这不是您想要的

请改为尝试
/^Aug[0-9]{1,2}://
。它查找以下文件名:

  • 以“Aug”开头
  • 然后是一个或两个数字
  • 然后是结肠
另外,您正在运行的bash命令是什么


(你可以在regex101.com上测试你的正则表达式,这是一个很好的网站;-)

使用这种模式
^Aug\s+[0-9]+:[0-9]+\s+(.+$)

^#字符串/行的开头
八月#“八月”
\s#
+#(一个或多个)(贪婪)
[0-9]#[0-9]字符类中的字符
+#(一个或多个)(贪婪)
:           # ":"
[0-9]#[0-9]字符类中的字符
+#(一个或多个)(贪婪)
\s#
+#(一个或多个)(贪婪)
(#捕获组(1)
.#除换行符外的任何字符
+#(一个或多个)(贪婪)
$#字符串/行的结尾
)#捕获组结束(1)

使用此模式
^Aug\s+[0-9]+:[0-9]+\s+(.+$)

^#字符串/行的开头
八月#“八月”
\s#
+#(一个或多个)(贪婪)
[0-9]#[0-9]字符类中的字符
+#(一个或多个)(贪婪)
:           # ":"
[0-9]#[0-9]字符类中的字符
+#(一个或多个)(贪婪)
\s#
+#(一个或多个)(贪婪)
(#捕获组(1)
.#除换行符外的任何字符
+#(一个或多个)(贪婪)
$#字符串/行的结尾
)#捕获组结束(1)

您的环境/语言是什么?Python/Javascript等?通用正则表达式将类似于@Saleem我使用的是batch如果您使用的是
findstr
,那么这不是正则表达式,或者至少是非常有限的正则表达式。您的环境/语言是什么?Python/Javascript等?通用正则表达式将类似于@Saleem我使用的是batch如果您使用的是
findstr
,那么这不是正则表达式,或者至少是非常有限的正则表达式。谢谢!但我使用的是批处理,但它不起作用:(在
findstr
regex中,不支持限制量词。我不知道
findstr
,但也许您可以使用此处描述的内容,谢谢!但我使用的是批处理,它不起作用:(在
findstr
regex中,不支持限制量词。我不知道
findstr
,但也许你可以使用
findstr
regex中的描述,
+
和类似
\s
的速记字符类。@WiktorStribiżew,OP没有在我在
findstr
regex中给出答案时,
+
和类似
\s
的速记字符类不受支持。@WiktorStribiżew,OP在我给出答案时没有指定任何关于
findstr
的内容
/^Aug :/
^           # Start of string/line
Aug         # "Aug"
\s          # <whitespace character>
+           # (one or more)(greedy)
[0-9]       # Character in [0-9] Character Class
+           # (one or more)(greedy)
:           # ":"
[0-9]       # Character in [0-9] Character Class
+           # (one or more)(greedy)
\s          # <whitespace character>
+           # (one or more)(greedy)
(           # Capturing Group (1)
  .         # Any character except line break
  +         # (one or more)(greedy)
  $         # End of string/line
)           # End of Capturing Group (1)