文章详情页
java - 正则表达式问题
浏览:158日期:2023-11-01 15:25:44
问题描述
想用正则提取如下信息 改怎么写呢?
123 男 北京 张三343 女 河北 石家庄 李四2343 男 山东 王五提取 男 张三 女 李四 男 王五
问题解答
回答1:其实对于中文, 特别是这样格式的中文, 我是不建议用正则的, 虽然勉强也能实现:
# coding: utf8import refilename = ’2.txt’patern = re.compile(r’^d+ (S+).*?(S+)’)with open(filename) as f: for i in f:result = patern.findall(i[:-1]) if result and len(result[0]) == 2: print result[0][0], result[0][1] # 输出:男 北京女 河北男 山东
你也可以用split的方法(建议):
# coding: utf8filename = ’2.txt’with open(filename) as f: for i in f:result = i.split()print result[1], result[-1] # 输出:男 北京女 河北男 山东
标签:
java
相关文章:
1. docker - 如何修改运行中容器的配置2. docker 下面创建的IMAGE 他们的 ID 一样?这个是怎么回事????3. docker-machine添加一个已有的docker主机问题4. javascript - 修改表单多选项时和后台同事配合的问题。5. 关于docker下的nginx压力测试6. angular.js - angularjs的自定义过滤器如何给文字加颜色?7. Docker for Mac 创建的dnsmasq容器连不上/不工作的问题8. javascript - 怎么实现点击表格中的某一行然后就在表单处出现表格中的对应的属性值啊9. redis - 究竟是选择微信小程序自带的统计工具还是自己开发一个数据统计的代码?10. angular.js - angular ui bootstrap 中文显示问题
排行榜

网公网安备