经过数次测试,可以确定如下问题:
1、同样的正则表达式'^[a-zA-Z][a-zA-Z\d_-]{{5,19}}$',用python的re函数,能够有效匹配出大小写字母开头的字符串,但MYSQL不能分辨大小写字母
2、把正则表达试换成'^[0-9][a-zA-Z\d_-]{{5,19}}$',MYSQL能匹配出数字开头的字符串
3、SQL语言前面的r和f,都去掉过,或者只保留其中一个,也没用
真的百思不得其解!
a = '5z-9ChenSiJie'
b = re.subn(r'^[a-zA-Z][a-zA-Z\d_\-]{5,19}$', '', a)
print(b)
sql1 = rf"""select * from wx_visit_records where REGEXP_LIKE(message,'^[a-zA-Z][a-zA-Z\d_\-]{{5,19}}$')"""
res, header = g.execute_sql(sql1, None)
print(res)
df = pd.DataFrame(res, columns=header)
print(df)