在regex中使用字母选择器的问题

2024-09-27 19:22:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我的字符串如下所示:

"Jothijohnsamyperiyasamy"

我只需要上面字符串中的"Jothijohnsamy"。正则表达式

'Jo\w+samy'

打印"Jothijohnsamyperiyasamy",但我只想要"Jothijohnsamy"。有什么想法吗?你知道吗


Tags: 字符串josamyjothijohnsamyperiyasamyjothijohnsamy
1条回答
网友
1楼 · 发布于 2024-09-27 19:22:32

尝试非贪婪匹配:

>>> re.compile(r"Jo\w+?samy").match("Jothijohnsamyperiyasamy")
<_sre.SRE_Match object; span=(0, 13), match='Jothijohnsamy'>
>>> _.group()
'Jothijohnsamy'

+?标记表示“匹配1次或更多次,但尽可能少。没有问号的意思是“匹配1次或更多次,尽可能多”。你知道吗

另一个简单的例子:对于字符串"aaaaaa",regex a+匹配所有字符,但是a+?只匹配一个字符(尽可能少),而a*?不匹配任何字符。你知道吗

相关问题 更多 >

    热门问题