python - 有性格的管道更换

标签 python

我有这个代码:

> list=str(raw_input('Enter pipe seprated list [PRIMARY|SECONDARY]:'))
> n_list="^"+list+"$" 
> print n_list

当我执行它时,它提示我:

Enter pipe separated list [PRIMARY|SECONDARY]:PRIMARY

如上所述,如果我给 PRIMARY 它给我的结果是:

^PRIMARY$

如果提供输入作为 PRIMARY|SECONDARY:

Enter pipe seprated list [PRIMARY|SECONDARY]:PRIMARY|SECONDARY

我得到的输出为:

^PRIMARY|SECONDARY$

这里我想得到输出:

^PRIMARY$|^SECONDARY$ 如果我输入PRIMARY|SECONDARY。请帮助我实现这一目标。

最佳答案

按照|进行拆分,在每一项的开头和结尾添加^$。然后使用 | 将它们加入。

>>> s = 'PRIMARY|SECONDARY'
>>> print '|'.join(['^' + i + '$' for i in s.split('|')])
^PRIMARY$|^SECONDARY$
>>> s = 'PRIMARY'
>>> print '|'.join(['^' + i + '$' for i in s.split('|')])
^PRIMARY$
>>> s = 'PRIMARY|SECONDARY|TERTIARY'
>>> print '|'.join(['^' + i + '$' for i in s.split('|')])
^PRIMARY$|^SECONDARY$|^TERTIARY$
>>> 

关于python - 有性格的管道更换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34284386/

相关文章:

python - 如何使用 python pandas 根据特定(字符串)列对数据框进行排序?

python - 美丽汤提取物标签删除文字

python - 我应该使用哪个 Python XML 库?

python - 使用 python mechanize 库登录 https 站点

python - 在Python中,如果你返回一个字符串,它将显示在其周围的引号中,但如果你打印该字符串,它将不会显示在引号中。为什么?

python - 如何在 vim 中关闭 Python 错误检查? (vim 终端 7.3、OS X 10.11 Yosemite)

Python 日志记录和日语(或任何非 ASCII)

python - 使用 celery 处理巨大的文本文件

python - 当用户在数据表中单击时, Bokeh 图将被停用,并且没有正确的方法来激活 Bokeh 图

python - 如何在Gurobi python界面中创建二进制变量?