请教一个关于正则表达式的问题

2018-04-22 21:41:41 +08:00
 superchijinpeng

给定一字符串:abc_de_fghi__pzf___56_

请问如何使用正则匹配:abc de fghi pzf 56 ?

1687 次点击
所在节点    问与答
8 条回复
Kaciras
2018-04-22 22:06:46 +08:00
[0-9a-z]+
zgx030030
2018-04-22 22:07:14 +08:00
[a-zA-Z0-9]+
还是我想简单了?😄
ThirdFlame
2018-04-22 22:10:24 +08:00
给这个 abc_de_fghi__pzf___56_ 输出这个 abc de fghi pzf 56 ????
难道不是 replce ?还要用 re ?
superchijinpeng
2018-04-22 22:23:10 +08:00
@Kaciras
@zgx030030
@ThirdFlame

不好意思是我没有表述清楚,我本意是给定一个字符串:_abc_de_fghi__pzf___56_ (_第一个_第二个_第三__第四个___第五个_) ,如何取得这五个字串?
ifaii
2018-04-22 22:41:02 +08:00
r = '_abc_de_fghi__pzf___56_'
[ x for x in r.split('_') if x != '' ]

L3 的方法更快了,要啥正则
wevsty
2018-04-22 22:44:35 +08:00
正则的话这样写就行了 [a-zA-Z0-9]+[^_]+
不过说实话针对这种字符串,直接 split 更快。
Arnie97
2018-04-24 02:53:44 +08:00
s.replace('_', '').split()
Arnie97
2018-04-24 02:54:50 +08:00
楼上笔误
s.replace('_', ' ').split()

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

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

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

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

© 2021 V2EX