regex - 使用 python3.x 中的正则表达式从文本中删除某些部分
问题描述
我需要:
从下面给出的所有行(不包括:
以日期时间格式出现)中删除该部分。有没有办法选择长度并将其替换为“”。
一个.txt
Mon Sep 17 04:01:35 2018 abc.mnba:15885: afhoashfodcasnc.
Mon Sep 17 04:01:35 2018 abc.mnba:16199: inancaaldajijeijiodncna
Mon Sep 17 04:01:35 2018 abc:9: iunancn andjcadjjacnn noancoan
Mon Sep 17 04:01:35 2018 abc: abc = {
'uf' => '',
'uft' => 'afbcjbja',
'ufd' => 'saflkacklmsakcmk',
'ufc' => 'ubakcb'
};
预期解决方案
afhoashfodcasnc.
inancaaldajijeijiodncna
iunancn andjcadjjacnn noancoan
$abc = {
'uf' => '',
'uft' => 'afbcjbja',
'ufd' => 'saflkacklmsakcmk',
'ufc' => 'ubakcb'
};
askpfmkasmkvmksamvmk
Kdriver: jafnajncjjanjnnfjnjajjf
fkcjkackkakkafjkajkfjdka
I hcjfdajnfcjnajncjjanjnjnjndjnfjcnjn
I afkjakcnakkdfjncnalldkfkdafkccnnlkn
kdfjkackanjdnfjajsfdcjcnjnjanjnfcaksfaljscll
fajncjnjanjdnfjnajsdnfjcnjakncjajnfjajdfjanjncjnjnja
ijfiandfnanejfdcijiandnajfnejdfhncncjnjanjnedfncjanncfjanjcnj
akmfkcmkmakmkdmfekmfkmkckmakmdkmfkmkamdfcammdckmckcmkckdkal ladmflmalcml
我的解决方案
import re
with open("a.txt", 'r') as f:
for lines in f:
line = re.sub(r"^.{20}", "", lines)
print(line)
解决方案
模式必须比你的建议复杂一点。我已经对此进行了测试,它似乎得到了您的预期结果:
import re
with open("a.txt", 'r') as f:
for lines in f:
if ":" in lines:
line = re.findall(r":\s?\D.+$", lines)[0][1:].strip()
else:
line = lines
print(line)
这将打印出以下结果
afhoashfodcasnc.
inancaaldajijeijiodncna
iunancn andjcadjjacnn noancoan
$abc = {
'uf' => '',
'uft' => 'afbcjbja',
'ufd' => 'saflkacklmsakcmk',
'ufc' => 'ubakcb'
};
askpfmkasmkvmksamvmk
Kdriver: jafnajncjjanjnnfjnjajjf
fkcjkackkakkafjkajkfjdka
I hcjfdajnfcjnajncjjanjnjnjndjnfjcnjn
I afkjakcnakkdfjncnalldkfkdafkccnnlkn
kdfjkackanjdnfjajsfdcjcnjnjanjnfcaksfaljscll
fajncjnjanjdnfjnajsdnfjcnjakncjajnfjajdfjanjncjnjnja
ijfiandfnanejfdcijiandnajfnejdfhncncjnjanjnedfncjanncfjanjcnj
akmfkcmkmakmkdmfekmfkmkckmakmdkmfkmkamdfcammdckmckcmkckdkal ladmflmalcml
推荐阅读
- javascript - 当我尝试在节点控制台内实例化对象时未捕获的引用错误
- excel - VBA 中的 XML 和 XPath 处理
- android - 使用 android NFC 读取 MIFARE 门禁卡数据
- sql - 在 SQL 中更新后如何查找受影响的行
- javascript - TypeError: render is not a function Context Api Multiple Context
- reactjs - How to properly display a Material UI Native select and change the selection using a state hook
- java - I get an error when clicking the buttons repeatedly. How can I fix it?
- node.js - How to pass Dynamically generated bundlename from webpack to a pug file which is being rendered by node
- python - 合并两张表,根据两列的相似度创建一列
- c++ - C++ files stopped compiling - keep getting error: linker command failed with exit code 1 (use -v to see invocation)