正则达人帮忙看看这则简单的正则吧

2013-08-22 08:39:16 +08:00
 tangyuan
[\s*(\[]\w+-?\d+[\])\s*]

\w+明明想表达的意思是必须是以字母在这里的,但是现在的结果是诸如[0568]这种结果也会被匹配到,理应[abc123]类似的才行的,怎么回事的?我尝试加上^,^\w+,但不行,这样就一个都匹配不到了
1895 次点击
所在节点    正则表达式
4 条回复
workaholic
2013-08-22 08:59:00 +08:00
\w是匹配字母、数字、下划线的;
如果必须字母开头你可以 用 [a-zA-Z]
tangyuan
2013-08-22 09:06:59 +08:00
@workaholic 学习了学习了!感谢,再请教工作狂达人个问题,如果我要匹配strong这个单词,出现一次或者没有,应该怎么将它圈出来呢?[strong]?应该不是,这是说s, t, r...单个字母的,只能用()吗?用了()会被视为匹配的结果被re.findall() #python抓到匹配结果列表中去,不希望它被抓进去
123123
2013-08-22 09:19:43 +08:00
@tangyuan (?:strong)
tangyuan
2013-08-22 09:44:20 +08:00
@123123 感谢123123神一般的存在

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/79828

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX