首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >删除两个单词之间的连字符(-)将在列表中创建空元素

删除两个单词之间的连字符(-)将在列表中创建空元素
EN

Stack Overflow用户
提问于 2019-12-03 15:06:27
回答 3查看 140关注 0票数 0

我正在尝试通过下面的代码消除列表中单词中的连字符

代码语言:javascript
复制
listA=['End-to-End Encryption']

listmain= '-'.join(listA).split('-')

我得到的输出是

代码语言:javascript
复制
['End', '', '', 'to', '', '', 'End', 'Encryption']

如何删除创建的不必要的空白元素

所需的理想输出

代码语言:javascript
复制
['End', 'to', 'End', 'Encryption']

如何实现这一点。

EN

回答 3

Stack Overflow用户

发布于 2019-12-03 15:11:41

使用多个分隔符将其拆分。正则表达式。

代码语言:javascript
复制
listA = ['End-to-End Encryption']
listmain = re.split(r'\s|-', listA[0])
票数 1
EN

Stack Overflow用户

发布于 2019-12-03 15:20:24

这应该可以完成工作,并且对于在listA中发送的1个以上是动态的

代码语言:javascript
复制
listmain = [val.replace("-"," ").split() for val in listA]

例如:

代码语言:javascript
复制
listA = ["End-to-End Encryption", "End-to-End Decryption"]
listmain = [val.replace("-"," ").split() for val in listA]

O/P:

代码语言:javascript
复制
[["End", "to" ,"End", "Encryption"],["End","to","End","Decryption"]]
票数 0
EN

Stack Overflow用户

发布于 2019-12-03 15:24:14

下面的代码可以完美地运行:

代码语言:javascript
复制
listA=['End-to-End Encryption']
for el in listA:
    str2 = el.split('-')
    print(str2)

此代码的输出为:

代码语言:javascript
复制
['End', 'to', 'End Encryption']
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59151781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档