2024-05-28 23:07:56 发布
网友
我想在文本中找到缩写并删除它。我现在所做的是识别连续的大写字母并删除它们。在
但是我看到它没有删除缩写,比如MOOCs,M.O.O.C,M.O.O.Cs。在python中有没有一种简单的方法可以做到这一点?或者有什么库可以代替我使用吗?在
MOOCs
M.O.O.C
M.O.O.Cs
一种直观的方法是使用regex
这个正则表达式的作用是:([A-Z]\.*){2,}s?在
在python中给出:
import re re.sub("([A-Z]\.*){2,}s?","", your_text)
如有疑问,请访问regex文档 https://docs.python.org/2/library/re.html#re.sub
reregex库可能是该作业的工具。在
re
为了删除每个连续大写字母的字符串,可以使用以下代码:
import re mytext = "hello, look an ACRONYM" mytext = re.sub(r"\b[A-Z]{2,}\b", "", mytext)
在这里,regex"\b[A-Z]{2,}\b"搜索多个连续的(由[...]{2,})大写字母(A-Z)组成一个完整的单词(\b...\b)。然后用第二个字符串""替换它们。在
"\b[A-Z]{2,}\b"
[...]{2,}
A-Z
\b...\b
""
regex的方便之处在于,它可以很容易地针对更复杂的情况进行修改。例如:
将替换连续的大写字母和句号,删除首字母缩写,如A.B.C.D.和ABCD。在.之前的\与.一样是必需的,否则regex会将其用作一种通配符。在
.
\
?说明符也可用于删除以s结尾的首字母缩略词,例如:
?
mytext = re.sub(r"\b[A-Z\.]{2,}s?\b", "", mytext)
此正则表达式将删除ABCD、A.B.C.D甚至A.B.C.Ds等首字母缩略词。如果需要删除其他形式的首字母缩略词,则可以轻松修改正则表达式以适应它们。在
re库还包括findall或match函数之类的函数,允许程序单独定位和处理每个首字母缩略词。例如,如果您想查看要删除的首字母缩略词列表并检查其中是否有合法的单词,那么这可能会很有用。在
一种直观的方法是使用regex
这个正则表达式的作用是:([A-Z]\.*){2,}s?在
在python中给出:
如有疑问,请访问regex文档 https://docs.python.org/2/library/re.html#re.sub
re
regex库可能是该作业的工具。在为了删除每个连续大写字母的字符串,可以使用以下代码:
在这里,regex
"\b[A-Z]{2,}\b"
搜索多个连续的(由[...]{2,}
)大写字母(A-Z
)组成一个完整的单词(\b...\b
)。然后用第二个字符串""
替换它们。在regex的方便之处在于,它可以很容易地针对更复杂的情况进行修改。例如:
^{pr2}$将替换连续的大写字母和句号,删除首字母缩写,如A.B.C.D.和ABCD。在
.
之前的\
与.
一样是必需的,否则regex会将其用作一种通配符。在?
说明符也可用于删除以s结尾的首字母缩略词,例如:此正则表达式将删除ABCD、A.B.C.D甚至A.B.C.Ds等首字母缩略词。如果需要删除其他形式的首字母缩略词,则可以轻松修改正则表达式以适应它们。在
re
库还包括findall或match函数之类的函数,允许程序单独定位和处理每个首字母缩略词。例如,如果您想查看要删除的首字母缩略词列表并检查其中是否有合法的单词,那么这可能会很有用。在相关问题 更多 >
编程相关推荐