如何在下面使用^$符号仅解析/blog/articles

我创建了包含以下内容的ex3.txt:

/blog/article/1
/blog/articles
/blog
/admin/blog/articles

和正则表达式:
^/blog/articles$

似乎不起作用,因为当我使用'regetron'(see learning regex the hard way)键入内容时,下一行没有输出。

这是我的确切程序:
  • 在正确目录的命令行中,键入:regetron ex3.txt。 ex3.txt包含以下一行:

    /blog/article/1/blog/articles/blog/admin/blog/articles

  • 尽管我已经尝试过使用条目之间的换行符。
  • 我输入^/blog/article/[0-9]$,下一行什么也没有返回。
  • 我尝试发布第一个解决方案^\/blog\/articles$,但未返回任何内容。

  • 预先感谢大家!

    最佳答案

    根据您的更新,听起来^$可能不是您合适的运算符。它们分别与行的开头和结尾匹配。如果您想在同一行上匹配多个字符串,那么您将需要更多类似以下内容的字符串:
    (?:^|\s)(\/blog\/articles)(?:$|\s)
    这是做什么的:

    (?:^|\s)            Matches, but does not capture (?:), a line start (^) OR (|) a whitespace (\s)
    (\/blog\/articles)  Matches and captures /blog/articles.
    (?:$|\s)            Matches, but does not capture (?:), a line end ($) OR (|) a whitespace (\s)
    

    这在两种情况下都适用,但请注意,它将在/blog/articles之前和之后匹配(但不捕获)多达单个空格。

    关于python - 如何使用^和$解析简单表达式?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17659005/

    10-13 08:00