我有以下字符串:
SOURCEFILE: file_name.dc : 1 : log: the logging area
我试图在变量中存储第三个和第四个冒号之间的任何内容并丢弃其余部分。
我试图制作一个正则表达式来抓住这个但是到目前为止我有这个错误:
([^:]:[^:]*)
我希望得到一些帮助以及对有效正则表达式的解释,以便我可以从错误中吸取教训。
答案 0 :(得分:1)
numbers = 12345
letters = 'abcde'
num_letters = '12345'
# this works:
str(numbers)
int(num_letters)
# this doesn't work:
int(letters)
答案 1 :(得分:0)
import re
s = "SOURCEFILE: file_name.dc : 1 : log: the logging area"
#find out all indices of colon in string
indices = [x.start() for x in re.finditer(":",s)]
result = s[:indices[2]] + s[indices[3]+1:] # remove 3rd and 4th colon as well
#result = s[:indices[2]+1] + s[indices[3]:] #remains 3rd and 4th colon
尝试找出第3和第4个冒号的索引,并连接头部和尾部
答案 2 :(得分:0)
已做出以下假设。
input
这只是一行:
result = map(lambda s: s.strip(), input.split(':'))[3]
如果你需要保留空格:
result = input.split(':')[3]