Python正则表达式字符串匹配?

发布于 2024-12-07 09:14:00 字数 297 浏览 0 评论 0原文

我在尝试将 javascript 正则表达式的经验转移到 Python 上遇到了很大的困难。

我只是想让这个工作:

print(re.match('e','test'))

...但它打印 None 。如果我这样做:

print(re.match('e','est'))

它匹配...默认情况下它是否匹配字符串的开头?当它匹配时,我如何使用结果?

我如何使第一个匹配?有比 python 网站提供的更好的文档吗?

I'm having a hell of a time trying to transfer my experience with javascript regex to Python.

I'm just trying to get this to work:

print(re.match('e','test'))

...but it prints None. If I do:

print(re.match('e','est'))

It matches... does it by default match the beginning of the string? When it does match, how do I use the result?

How do I make the first one match? Is there better documentation than the python site offers?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一笔一画续写前缘 2024-12-14 09:14:00

re.match 隐式地将 ^ 添加到正则表达式的开头。换句话说,它只匹配字符串的开头。

re.search 将在所有位置重试。

一般来说,我建议使用 re.search 并在需要时显式添加 ^

http://docs.python.org/library/re.html

re.match implicitly adds ^ to the start of your regex. In other words, it only matches at the start of the string.

re.search will retry at all positions.

Generally speaking, I recommend using re.search and adding ^ explicitly when you want it.

http://docs.python.org/library/re.html

违心° 2024-12-14 09:14:00

我认为文档很清楚。

re.match(模式,字符串[,标志])¶

如果字符串开头的零个或多个字符**与

正则表达式模式,返回对应的MatchObject
实例。如果字符串与模式不匹配,则返回 None;笔记
这与零长度匹配不同。

the docs is clear i think.

re.match(pattern, string[, flags])¶

If zero or more characters **at the beginning of string** match the

regular expression pattern, return a corresponding MatchObject
instance. Return None if the string does not match the pattern; note
that this is different from a zero-length match.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文