Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 提取具有特定字符序列的单词_Python_Regex - Fatal编程技术网

Python 提取具有特定字符序列的单词

Python 提取具有特定字符序列的单词,python,regex,Python,Regex,我有一个字符串列表。我只想提取每个字符串中具有特定字符序列的单词 比如说 l1=["grad madd have", "ddim middle left"] 我要所有有序列“dd”的单词 所以我想 [["madd"], ["ddim", "middle"]] 我一直在尝试这种形式的模式 [re.findall(r'(\b.*?dd.*\s+)',word) for word in l1] 但是几乎没有成功您可以尝试使用这个正则表达式:\b\w*dd\w*\b 您可以尝试使用此正则表达式:

我有一个字符串列表。我只想提取每个字符串中具有特定字符序列的单词

比如说

l1=["grad madd have", "ddim middle left"]
我要所有有序列“dd”的单词

所以我想

[["madd"], ["ddim", "middle"]]
我一直在尝试这种形式的模式

[re.findall(r'(\b.*?dd.*\s+)',word) for word in l1] 

但是几乎没有成功

您可以尝试使用这个正则表达式:
\b\w*dd\w*\b


您可以尝试使用此正则表达式:
\b\w*dd\w*\b

试着用一句话:

l1=["grad madd have", "ddim middle left"]

print(list(map(lambda x:list(filter(lambda y:'dd' in y,x.split())),l1)))
输出:

[['madd'], ['ddim', 'middle']]
请在一行中尝试:

l1=["grad madd have", "ddim middle left"]

print(list(map(lambda x:list(filter(lambda y:'dd' in y,x.split())),l1)))
输出:

[['madd'], ['ddim', 'middle']]

您可以使用列表理解来进行此操作。你不需要正则表达式来完成你想要做的事情


这将在
l1
上循环,并按空格字符分割每个值。然后,它测试该子字符串以查看它是否包含
dd
,如果包含,则返回它。

您可以使用列表理解进行此操作。你不需要正则表达式来完成你想要做的事情


这将在
l1
上循环,并按空格字符分割每个值。然后,它测试该子字符串以查看它是否包含
dd
,如果包含,则返回该子字符串。

如果已接近,则需要将单词字符0与
\w*
匹配多次:

[re.findall(r'\w*dd\w*', word) for word in l1]

如果您很接近,则需要将单词字符0与
\w*
匹配多次:

[re.findall(r'\w*dd\w*', word) for word in l1]

你需要正则表达式吗?我的思路与quamrana相同,如果你将l1[0]和l1[1]处的字符串转换为列表(按空格分割),那么你可以循环使用:如果“dd”in…你需要正则表达式吗?我的思路与quamrana相同,如果你将l1[0]和l1[1]处的字符串转换为列表(按空格分割)然后你可以循环使用:如果在…中使用“dd”,那么正确的表达式是
[re.findall(r'\b\w*dd\w*\b',x)表示l1中的x]
正确的表达式是
[re.findall(r'\b\w*dd\w*\b',x)表示l1中的x]
正则表达式不完整。正则表达式不完整。