繁体   English   中英

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

[英]How to check if a line contains a string in Python

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

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

问题是,我不想匹配任何 ZE83AED3DDF4667DEC0DAAAACB2BB3BE0BZ。 我正在从文件中读取数据:

现在其中一行有这个文本: cout<<"Hello"<<endl;

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

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

re_string_lit = '^"[a-zA-Z0-9_ ]+"$'

text = 'cout<<"Hello World!"<<endl;'

re.match(re_string_lit,text)

它没有 output 任何东西。

简而言之,我只想提取“”里面的所有内容

如果您只想提取 "" 中的所有内容,那么字符串拆分将是一种更简单的做事方式。

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

上面的示例仅适用于不超过 2 个双引号 (") 实例,但您可以通过迭代使用拆分方法提取的每个 substring 并应用更简单的正则表达式来使其工作。

这对我有用:


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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM