如何从API响应提取的字符串变量中提取6位验证码
从验证码字符串中提取6位数字的方法
假设你已经通过JSONPath拿到了类似 Your code is 123456. 的字符串变量,这里提供几种简单实用的提取方法:
正则表达式(最推荐,适配多数场景):用正则匹配连续6位数字,不管前后文本怎么变都能准确提取。以Python为例:
import re msg = "Your code is 123456." verification_code = re.search(r'\d{6}', msg).group() # 输出结果:123456解释:
\d{6}是正则语法,代表匹配连续6个数字;re.search会找到字符串中第一个符合规则的内容,group()用来取出匹配到的数字。固定格式字符串分割:如果返回的文本格式永远是
Your code is {6位数字}.,可以用字符串分割来提取:msg = "Your code is 123456." verification_code = msg.split("is ")[1].strip(".") # 输出结果:123456解释:先按
is把字符串分成两部分,取第二部分后再去掉末尾的句号。字符串切片(仅适用于文本位置完全固定的情况):如果数字在字符串中的位置永远不变,可以直接切片提取:
msg = "Your code is 123456." verification_code = msg[12:18] # 从第12位到第18位(左闭右开) # 输出结果:123456注意:这种方法局限性大,一旦前面的文本长度变化就会失效,不建议优先使用。
内容的提问来源于stack exchange,提问作者Brad DeDea
相关产品推荐
相关产品推荐

