我有一个看起来像这样的字符串: new_tt_j1213。
我需要把它分成'new','tt',‘j 1213’。
字符串规则:
使用拆分()方法非常容易,但由于数据损坏,有时缺少第一个下划线:'newtt_j1213‘
由于我对Regex非常陌生,您能帮我调整下面的代码吗?即使没有第一个'_‘,拆分也能像前面描述的那样工作。(甚至没有第二个下划线)?
p1 =''
p2 =''
p3 =''
str_t = 'newtt_j123'
str_t1 = 'new_tt_j1213'
str_t2 = 'newttj1213'
str3 = 'new_ttj1213'
# Test for data Corruption
tr_lst = re.split('_', str_t)
if len(tr_lst) <3: print('DATA CORRUPTION - ',tr_lst)
p1, p2, p3 = re.split('_', str_t) # THIS LINE NEEDS ADJUSTMENT (REGEX?)
print(p1, p2, p3, str_t)谢谢你!!
发布于 2021-09-26 23:29:25
据我所知,你可以不用regex就能做到。
首先,删除所有_ (如果有s.replace('_', '') ),然后使用括号提取如下所示:
s = "newtt_j1213"
s = s.replace('_', '')
ss = [ s[0:3], s[3:5], s[5:] ]
print(ss)输出:['new', 'tt', 'j1213']
https://stackoverflow.com/questions/69339477
复制相似问题