这个问题不是很清楚,但您正在寻找的正则表达式语法可能是这样的:
\)\sas\s(.*?)[\s | \r | \n]
基本上在您感兴趣的字符串之后告诉您可以找到空格或其他字符。
编辑作为示例,在 Python2 中使用以下代码。OR 运算符是“|” 我在方括号中使用它来捕获具有空格作为后续字符的字符串 '\r' a 。或“d”。
import re
a = ') as whatever '
b = ') as whatever\r\n'
c = ') as whatever.'
d = ') as whateverd'
a_res = re.findall(r'\)\sas\s(.*?)[\s | \r | \n]', a)[0] #ending with space, \r or new line char
b_res = re.findall(r'\)\sas\s(.*?)[\s | \r | \n]', b)[0]
c_res = re.findall(r'\)\sas\s(.*?)[\s | \r | \on | \.]', c)[0] #ending with space, \r new line char or .
d_res = re.findall(r'\)\sas\s(.*?)[\s | \r | \on | \. | d]', d)[0] #ending with space, \r, new line char, . or d
print(a_res, len(a_res))
print(b_res, len(b_res))
print(c_res, len(c_res))
print(d_res, len(d_res))