你如何从&#34中提取这个词; [word]是什么意思"在python字符串?

时间:2016-12-01 18:50:41

标签: python

有没有办法使用周围的空格提取单词,如下所示:

string = 'what does blah mean?'

事先知道只有"什么"然后是单词然后"意思是",怎么会得到这个词?

2 个答案:

答案 0 :(得分:1)

简单的方法是使用正则表达式,例如:

import re

test = re.compile(r"what does (.*?) mean", re.IGNORE_CASE)

然后在输入中找到所有内容并使用每个匹配中的[1]元素。

答案 1 :(得分:1)

正如https://docs.python.org/2/library/string.html#string.split所述:

  

string.split(s [,sep [,maxsplit]])

     

返回一个单词列表   字符串。如果可选的第二个参数sep不存在或者是None,则   单词由空格字符的任意字符串分隔   (空格,制表符,换行符,返回,换页)。如果第二个参数sep是   present和not None,它指定要用作单词的字符串   分隔器。返回的列表将有一个项目而不是   字符串中分隔符的非重叠出现次数。   如果给出maxsplit,则最多发生maxsplit分割数,并且   字符串的其余部分作为列表的最后一个元素返回   (因此,列表最多只有maxsplit + 1个元素)。如果是maxsplit   未指定或-1,则分割数量没有限制   (所有可能的分裂都是)。

     

拆分空字符串的行为取决于sep的值。   如果未指定sep或指定为None,则结果为a   空列表。如果将sep指定为任何字符串,则结果为a   包含一个空字符串元素的列表。

所以,你会使用string.split()[the_word_you_want-1]