Python - 检查字符串是否包含多个单词

时间:2016-08-21 20:42:52

标签: python python-2.7

我想知道Python 2.7中是否有一个函数检查字符串是否包含多个单词(如在单词中包含空格/标点符号),类似于.isalpha()检查的方式看一个字符串是否只包含字母?

例如,如果存在某些内容......

var_1 = "Two Words"

if var_1.containsmultiplewords():
print "Yes"

然后"是"将是输出。

谢谢!

2 个答案:

答案 0 :(得分:4)

基本实施

通常,您使用split()将一串字词拆分成一个列表。如果列表包含多个元素,则为True(即您可以打印

def contains_multiple_words(s):
  return len(s.split()) > 1

标点符号支持

为了支持标点符号等,你可以通过re module的split命令拆分正则表达式:

import re

def contains_multiple_words(s):
  return len(re.compile('\W').split(s)) > 1

正则表达式字符类 \W表示任何单个字符,例如标点符号或空格(有关详细信息,请参阅Python regex syntax guide)。

因此,拆分此而不仅仅是空格(第一个例子中的默认值)可以更加真实地理解“单词”。

答案 1 :(得分:1)

不存在任何这样的架子机制。

如果您的唯一目的是找出它只是一个单词,或者是否存在另一个单词,则可以通过以下方式完成:

x = 'has words'
' ' in x
>>> True