擅长:python、mysql、java
<p>使用-</p>
<pre><code>import re
a=[['2 Cups Fresh breadcrumbs'], ['1/3 Cup Parmesan cheese, grated'], ['For frying Vegetable Oil']]
pattern = re.compile("^([0-9]+)+$")
b=[]
for words in a:
w_lst = words[0].split()
b.append([ [w_lst[0], ' '.join(w_lst[1:]) ] if re.search(r'\d', w_lst[0]) else words for word in words][0])
print(b)
</code></pre>
<p><strong>输出</strong></p>
<pre><code>[['2', 'Cups Fresh breadcrumbs'], ['1/3', 'Cup Parmesan cheese, grated'], ['For frying Vegetable Oil']]
</code></pre>
<p><strong>解释</strong></p>
<p><code>a</code>是您的原始列表。<code>b</code>将是最终输出。你知道吗</p>
<p><code>w_lst = words[0].split()</code>获取嵌套列表中的每个字符串,并将该字符串拆分为单词列表。你知道吗</p>
<p><code>re.search(r'\d', w_lst[0])</code>搜索第一个单词中的数字。这个正则表达式可以修改以适应更严格的规则来检测字符串中的数字。如果找到,则返回<code>True</code>。你知道吗</p>
<p>在if-else条件中使用,如果该条件不满足,则输出原始字符串。你知道吗</p>
<p>如果有,则输出<code>[w_lst[0], ' '.join(w_lst[1:])]</code>。这是作为列表的第一个元素的第一个单词,后面是作为单个字符串连接的所有其他单词。你知道吗</p>
<p>希望这有帮助!你知道吗</p>