文章詳情頁
java - 正則表達式問題
瀏覽:123日期: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. angular.js - 輸入郵箱地址之后, 如何使其自動在末尾添加分號?3. javascript - 如何使用nodejs 將.html 文件轉化成canvas4. javascript - html5的data屬性怎么指定一個function函數呢?5. docker-compose中volumes的問題6. 在mac下出現了兩個docker環境7. python - Scrapy存在內存泄漏的問題。8. javascript - 后臺管理系統左側折疊導航欄數據較多,怎么樣直接通過搜索去定位到具體某一個菜單項位置,并展開當前菜單9. angular.js - $stateChangeSuccess事件在狀態跳轉的時候不執行?10. java如何生成token?
排行榜
