python正则匹配中文/英文/数字/其它字符 |
您所在的位置:网站首页 › 字符和数字混合输入python › python正则匹配中文/英文/数字/其它字符 |
匹配提取
一些字符串既包含中文、也包含英文、数字等,需要对这类字符串做提取,单个中文字符、英文单词以及数字表达等。需要采用正则匹配的方式来做 比如对于如下针对数据的描述 Android/IOS 2条装(0.25米+1米)土豪金拆分后想要得到 "Android" "/" "IOS" "2" "条" "装" "(" "0.25" "米" "+" "1" "米" ")" "土" "豪" "金"可以采用正则的方式匹配提取这些字符 def str_split(str): regex = r"[\u4e00-\u9fef]|[0-9.]*[0-9]+|[a-zA-Z]+\'*[a-z]*|." matches = re.findall(regex, str, re.UNICODE) return matches print(str_split("Android/IOS 2条装(0.25米+1米)土豪金"))输出结果如下: ['Android', '/', 'IOS', ' ', '2', '条', '装', '(', '0.25', '米', '+', '1', '米', ')', '土', '豪', '金'] 正则解析通过python包re来做正则匹配提取 包括四部分:中文字符、数字、英文单词和其它字符 中文字符:[\u4e00-\u9FEF] 汉字的unicode编码从4E00开始,基本汉字到9FA5,基本补充到9FEF。 汉字的unicode编码可见 汉字的unicode编码 数字:[0-9]*[.]?[0-9]+ 这里只匹配了整数或者带小数的情况,对于科学计数的方式还需要另外考虑。 英文单词:[a-zA-Z]+\’*[a-z]* 其它字符: . |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |