我有一些行存储在像这样的txt文件中。你知道吗
A()定义A
土豚的定义
这些定义只是暂时的占位符,因为实际的定义很长。 所以我想用(“这里的任何单词”)作为分隔符来拆分这些字符串。但我的代码似乎不起作用。你知道吗
import re
f1=open("A-shortened.txt","r")
l=f1.readlines()
#print l
for i in l:
list=re.split("\(()')",i)
print list
里面的部分重新拆分让我很困惑。我试过许多论点,但似乎没有一个能像我所希望的那样一分为二。你知道吗
感谢您的帮助。你知道吗
分隔符必须与要在之间删除的字符串部分相匹配。这有点棘手,因为
(
和)
是组字符,但这里是:r''
防止任何意外的反斜杠转义。这不要紧,但安全总比抱歉好。你知道吗\(
和\)
匹配文字(
和)
。你知道吗[^)]
匹配除右括号以外的任何内容。注意:这里没有反斜杠转义。你知道吗\s*
在分隔符的方括号部分之前和之后生成任何空格,这样分割的部分就不会以空格开头。如果需要这些空间,请简化为r'\([^)]*\)'
。你知道吗您需要按一个打开的paren、任意数量的非关闭paren字符和一个关闭paren进行拆分。所以你的正则表达式应该是这样的:
如果你也想占据这些空间:
将正则表达式更改为如下内容:
'\s*\(.*?\)\s*'
基本上是指:匹配所有可能的空格,后跟(
和)
周围的任何空格,以及之后所有可能的空格。你知道吗相关问题 更多 >
编程相关推荐