[英]Replacing 3 line string
调用外部 API 时我得到这样的响应 2 行 44 个字符共 88 个字符。这是完美的。
r.text = "P<RUSBASZNAGDCIEWS<<AZIZAS<<<<<<<<<<<<<<<<<<"
"00000000<ORUS5911239F160828525911531023<<<10"
但有时我会得到这种响应,我需要使其与示例 1 中的相同。2 行 44 个字符。 所有这些大く
都应该替换为普通的<
并且空格也被删除
r.text = "P<RUSALUZAFEE<<ZUZILLAS<<<<
くくくくくくくくくく、
00000000<ORUS7803118 F210127747803111025<<<64"
预计 OUTPUT:
string = "P<RUSALUZAFEE<<ZUZILLAS<<<<<<<<<<<<<<<<<<<<<
00000000<ORUS7803118F210127747803111025<<<64"
您可以使用模块 re 中的 re.sub 来完成,如下所示
new_txt = re.sub("<", "く", old_txt)
或使用 str.replace 如下
new_str = OldStr.replace("く", "<")
或使用正则表达式并将其与 if else like
if pattern:
re.sub # or str.replace
else:
pass
import re pattern = r'\n.*く.*\n' s = re.compile(pattern) string = s.sub('\n', r.text)
这是最好的尝试,你会发现它很有帮助
import re
txt =""" P<RUSALUZAFEE<<ZUZILLAS<<<<
くくくくくくくくくく、
00000000<ORUS7803118 F210127747803111025<<<64"""
txt_1 = re.sub('(く |く)', '<', txt).replace('、','')
txt_2 = re.sub(r'\s+', '', txt_1)
regex = r"(\w<?\w+<+\w+<+)(\w*<?\w+<+\w+)"
result = re.match(regex, txt_2)
print(f'{result.group(1)}\n{result.group(2)}')
Output
P<RUSALUZAFEE<<ZUZILLAS<<<<<<<<<<<<<<
00000000<ORUS7803118F210127747803111025<<<64
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.