如何在下面使用^
和$
符号仅解析/blog/articles
?
我创建了包含以下内容的ex3.txt:
/blog/article/1
/blog/articles
/blog
/admin/blog/articles
和正则表达式:
^/blog/articles$
似乎不起作用,因为当我使用'regetron'(see learning regex the hard way)键入内容时,下一行没有输出。
这是我的确切程序:
/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/