\bThe\b
\nn 匹配已保存的子组 price: \16
\c 逐一匹配特殊字符...c(即,取消他的特殊含义,
按字面匹配) \., \\, \*
\A {\Z} 匹配字符串的起始...:
对正则表达式进行分组匹配子组
正则表达式模式匹配的字符串
\d+(\....+(\d+-\d+-\d+)'
>>> re.match(patt, data).group(1)
'2-4-10'
正则表达式本身是贪心匹配的,通配字在从左到右求值时会尽量抓取满足匹配的最长字符串...+"会从字符串起始处抓取模式最长字符,\d+只需要一位数字,从而不会影响\d+的匹配,所以他匹配了最右边的2
一个解决办法是用"非贪婪"操作符,"?"