Stata正则表达式提取省市名称

文章正文
发布时间:2025-04-26 10:31

看了一个帖子,要从地址中提取省份及市,前期帖子已经有了解决方案,但对于4个直辖市的处理,有位坛友@qianlxu出疑问,说原帖提供的方案导致city里的直辖市为空,那么如何让这四个直辖市既是省份又是市,这里再给一种简洁方案。














clear

input str63 Regplc

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省深圳市"                     

"广东省惠州市"                     

"广东省惠州市"                     

"北京市"                              

"安徽省芜湖市无为县"            

"湖南省洪江市"                     

"湖南省长沙市"                     

"河北省石家庄市"                  

"新疆维吾尔自治区乌鲁木齐市"

"江苏省苏州市"                     

"广东省佛山市"                     

"山东省潍坊市"                     

"河南省许昌市"                     

"河北省唐山市"                     

"重庆市"                              

"江西省景德镇市"                  

"山东省东营市"                     

"山东省济南市"                     

"河北省邯郸市"                     

"广东省深圳市"                     

"浙江省杭州市"                     

"河北省石家庄市"                  

"新疆维吾尔自治区乌鲁木齐市"

"安徽省合肥市"                     

"江苏省无锡市"                     

"湖南省长沙市"                     

"吉林省吉林市"                     

"江苏省南京市"                     

"湖北省宜昌市"                     

"山东省聊城市东阿县"            

"江苏省徐州市"                     

"内蒙古自治区赤峰市"            

"湖南省长沙市"                     

"广东省广州市"                     

"湖南省张家界市"                  

"山东省寿光市"                     

"辽宁省丹东市"                     

"湖北省武汉市"                     

"海南省海口市"                     

end


gen province=regexs(0) if regexm(Regplc,"(.*省|.*自治区|.*市)*")

gen city=regexs(2) if regexm(Regplc,"(.*省|.*自治区)?(.*市)")

list


     +------------------------------------------------------------+

     |                     Regplc           province         city |

     |------------------------------------------------------------|

  1. |               广东省深圳市             广东省       深圳市 |

  2. |               广东省深圳市             广东省       深圳市 |

  3. |               广东省深圳市             广东省       深圳市 |

  4. |               广东省深圳市             广东省       深圳市 |

  5. |               广东省深圳市             广东省       深圳市 |

     |------------------------------------------------------------|

  6. |               广东省深圳市             广东省       深圳市 |

  7. |               广东省深圳市             广东省       深圳市 |

  8. |               广东省深圳市             广东省       深圳市 |

  9. |               广东省深圳市             广东省       深圳市 |

10. |               广东省深圳市             广东省       深圳市 |

     |------------------------------------------------------------|

11. |               广东省深圳市             广东省       深圳市 |

12. |               广东省深圳市             广东省       深圳市 |

13. |               广东省深圳市             广东省       深圳市 |

14. |               广东省惠州市             广东省       惠州市 |

15. |               广东省惠州市             广东省       惠州市 |

     |------------------------------------------------------------|

16. |                     北京市             北京市       北京市 |

17. |         安徽省芜湖市无为县             安徽省       芜湖市 |

18. |               湖南省洪江市             湖南省       洪江市 |

19. |               湖南省长沙市             湖南省       长沙市 |

20. |             河北省石家庄市             河北省     石家庄市 |

     |------------------------------------------------------------|

21. | 新疆维吾尔自治区乌鲁木齐市   新疆维吾尔自治区   乌鲁木齐市 |

22. |               江苏省苏州市             江苏省       苏州市 |

23. |               广东省佛山市             广东省       佛山市 |

24. |               山东省潍坊市             山东省       潍坊市 |

25. |               河南省许昌市             河南省       许昌市 |

     |------------------------------------------------------------|

26. |               河北省唐山市             河北省       唐山市 |

27. |                     重庆市             重庆市       重庆市 |

28. |             江西省景德镇市             江西省     景德镇市 |

29. |               山东省东营市             山东省       东营市 |

30. |               山东省济南市             山东省       济南市 |

     |------------------------------------------------------------|

31. |               河北省邯郸市             河北省       邯郸市 |

32. |               广东省深圳市             广东省       深圳市 |

33. |               浙江省杭州市             浙江省       杭州市 |

34. |             河北省石家庄市             河北省     石家庄市 |

35. | 新疆维吾尔自治区乌鲁木齐市   新疆维吾尔自治区   乌鲁木齐市 |

     |------------------------------------------------------------|

36. |               安徽省合肥市             安徽省       合肥市 |

37. |               江苏省无锡市             江苏省       无锡市 |

38. |               湖南省长沙市             湖南省       长沙市 |

39. |               吉林省吉林市             吉林省       吉林市 |

40. |               江苏省南京市             江苏省       南京市 |

     |------------------------------------------------------------|

41. |               湖北省宜昌市             湖北省       宜昌市 |

42. |         山东省聊城市东阿县             山东省       聊城市 |

43. |               江苏省徐州市             江苏省       徐州市 |

44. |         内蒙古自治区赤峰市       内蒙古自治区       赤峰市 |

45. |               湖南省长沙市             湖南省       长沙市 |

     |------------------------------------------------------------|

46. |               广东省广州市             广东省       广州市 |

47. |             湖南省张家界市             湖南省     张家界市 |

48. |               山东省寿光市             山东省       寿光市 |

49. |               辽宁省丹东市             辽宁省       丹东市 |

50. |               湖北省武汉市             湖北省       武汉市 |

     |------------------------------------------------------------|

51. |               海南省海口市             海南省       海口市 |

     +------------------------------------------------------------+

复制代码


原贴地址:如何分离公司地注册地的省份和城市(含dataex) - Stata专版 - 经管之家(原人大经济论坛) (pinggu.org)