如何在Python中检查一行是否包含字符串



我正在尝试使用正则表达式检查字符串中是否存在子字符串。

回复:re_string_literal = '^"[a-zA-Z0-9_ ]+"$'

问题是,我不想匹配任何子字符串。我正在从一个文件中读取数据:

现在其中一行的文字是:cout<<"Hello"<<endl;

我只想检查行中是否有字符串,如果有,请将其存储在列表中。

我尝试过re.match方法,但只有在必须匹配模式的情况下它才有效,但在这种情况下,我只想检查字符串是否存在,如果存在,请将其存储在某个地方。

re_string_lit = '^"[a-zA-Z0-9_ ]+"$'
text = 'cout<<"Hello World!"<<endl;'
re.match(re_string_lit,text)

它不输出任何内容。

简单地说,我只想提取里面的一切">

如果你只想提取里面的所有东西"quot;那么字符串拆分将是一种更简单的方法。

>>> a = 'something<<"actualString">>something,else'
>>> b = a.split('"')[1]
>>> b
'actualString'

上面的例子只适用于不超过2个双引号("(实例,但您可以通过迭代使用split方法提取的每个子字符串并应用一个简单得多的正则表达式来实现它。

这对我有效:


re.search('"(.+?)"', 'cout<<"Hello"<<endl')

相关内容

最新更新