我是regex的新手。在这种情况下,我如何删除开头和结尾的空格。
a=";(a是a b(";
我在试
re.sub(r"([(s*w+s*)]*)",r"",a)
但我设法为这个模式写了一些,但对于替代品,我什么都不知道。我不确定它是否也适用于这种模式。需要你的支持。谢谢你的帮助。
您可以通过两个替换来实现这一点。也许还有更好的办法。
import re
a = "( a is a b )"
print(re.sub('(s+', '(', re.sub('s+)', ')', a)))
输出:
(a is a b)
我认为在您的情况下,使用lookahead/lookbacking是更好的方法。在这种模式中,它检查空格之前或之后是否有括号。(您可以在此处阅读详细信息(。你也可以在这里阅读关于这个正则表达式模式的解释
pattern = r"s(?=))|(?<=()s"
s = 'a = ( a is b )'
result = re.sub(pattern, '', s)
输出:
a = (a is b)