python 正则表达式 \bs*.\Se\b与\bs\S*?e\b的含义解释

目的:找出s开头e结尾的单词对于text2="siteseasuesweetseecasessesseelosessomewhere"为什么前者可以实现,后者无法实现... 目的:找出s开头e结尾的单词
对于text2="site sea sue sweet see case sse ssee loses somewhere"
为什么前者可以实现,后者无法实现
展开
 我来答
cnbubble
2016-09-25 · TA获得超过2607个赞
知道大有可为答主
回答量:1990
采纳率:83%
帮助的人:769万
展开全部

实测:

>>> res=re.compile(r'\bs*.\Se\b')
>>> resl=re.findall(res,txt)
>>> resl
['site', 'sue', 'see', 'sse', 'ssee']
>>> res=re.compile(r'\bs\S*?e\b')
>>> resl=re.findall(res,txt)
>>> resl
['site', 'sue', 'see', 'sse', 'ssee', 'somewhere']


第一个正则:

\b ——单词分界,

s*——0个或多个s

.——任一字符

\S——任一非空字符

e——字母e

\b——单词分界


第一个正则是错误的,它还可以匹配   "are"、"ss[一个空格]re",等不符合要求的内容。


后者是可以匹配到的。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式