我有一个正则表达式,它将数字与给定的字符串分开.
username = "testuser1"
xp = r'^\D+'
ma = re.match(xp, username)
user_prefix = ma.group(0)
print user_prefix
Run Code Online (Sandbox Code Playgroud)
输出是
testuser
Run Code Online (Sandbox Code Playgroud)
但如果用户名如下所示
username = "testuser1-1"
Run Code Online (Sandbox Code Playgroud)
我得到以下输出
testuser
Run Code Online (Sandbox Code Playgroud)
这是预料之中的.但我正在寻找以下内容
testuser1-
Run Code Online (Sandbox Code Playgroud)
基本上,正则表达式应该将最后出现的整数(不是单个数字)分开.
总结是
input = "testuser1"
>>> output = testuser
input = "testuser1-1"
>>> output = testuser1-
input = "testuser1-2000"
>>> output = testuser1-
Run Code Online (Sandbox Code Playgroud)
我可以用一个正则表达式来处理上述所有情况吗?