文章详情页
java - 正则表达式问题
浏览:221日期: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. css - 关于HTML中width和height的疑问(这个提问的标题不好起)2. 如何解决Centos下Docker服务启动无响应,且输入docker命令无响应?3. java - 如图,jsp页面的form中的action是怎么映射到这个位置的?为什么不写dynUser就可以映射到save?4. mysql - 求一个sql语句,比较简单。5. HTML5表单必填属性设置自定义验证消息?6. ruby-on-rails - 在安装RubyOnRails的时候出现问题7. java - 接口中的成员变量怎么不是常量了?8. javascript - 在 model里定义的 引用表模型时,model为undefined。9. javascript - 清空Chrome缓存的疑问10. html5 - bootstrap修改样式的问题
排行榜

网公网安备