假设我有这些字符串:
a = "hello"
b = "-hello"
c = "-"
d = "hell-o"
e = " - "
如何仅匹配-
(字符串C
)?我试过if "-" in something
,但显然不正确。有人可以建议吗?
假设我们将这些字符串放入列表中,循环播放,我想要提取的是C
。我该怎么做?
for aa in list1:
if not re.findall('[^-$]'):
print aa
那会是太凌乱吗?
答案 0 :(得分:4)
如果您只想匹配变量c
:
if '-' == something:
print 'hurray!'
回答更新:是的,那太麻烦了。你不需要正则表达式。简单的字符串方法更快:
>>> lst =["hello", "-hello", "-", "hell-o"," - "]
>>> for i, item in enumerate(lst):
if item == '-':
print(i, item)
2 -
答案 1 :(得分:1)
作为正则表达式的“^ - $”
答案 2 :(得分:0)
如果你要做的是删除短划线(即he-llo
给出hello
),那么这对于生成器表达式来说更像是一个工作。
''.join((char for char in 'he-llo' if char != '-'))
答案 3 :(得分:0)
if "-" in c and len(c) ==1 : print "do something"
OR
if c=="-"