c_unit.go 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. package clean
  2. import (
  3. "regexp"
  4. "strings"
  5. "unicode/utf8"
  6. )
  7. var c_unit_1 = regexp.MustCompile("([((]本级[))])$")
  8. var c_unit_2 = regexp.MustCompile("(局)$")
  9. // 清洗采购单位
  10. func CleanBuyer(buyer string) string {
  11. if buyer == "无" || buyer == "有限公司" {
  12. return ""
  13. }
  14. buyer = fieldReg1.ReplaceAllString(buyer, "")
  15. //中文括弧
  16. buyer = strings.ReplaceAll(buyer, "(", "(")
  17. buyer = strings.ReplaceAll(buyer, ")", ")")
  18. //清除后缀-本级
  19. buyer = c_unit_1.ReplaceAllString(buyer, "")
  20. if utf8.RuneCountInString(buyer) == 3 {
  21. if c_unit_2.MatchString(buyer) {
  22. return buyer
  23. }
  24. }
  25. if utf8.RuneCountInString(buyer) < 4 {
  26. buyer = ""
  27. }
  28. return buyer
  29. }
  30. // 清洗中标单位
  31. func CleanWinner(s_winner string) string {
  32. if s_winner == "无" || s_winner == "有限公司" {
  33. return ""
  34. }
  35. s_winner = fieldReg1.ReplaceAllString(s_winner, "")
  36. if utf8.RuneCountInString(s_winner) < 3 {
  37. s_winner = ""
  38. }
  39. s_winner = strings.ReplaceAll(s_winner, "(", "(")
  40. s_winner = strings.ReplaceAll(s_winner, ")", ")")
  41. return s_winner
  42. }
  43. // 清洗代理机构
  44. func CleanAgency(agency string) string {
  45. if agency == "无" || agency == "有限公司" {
  46. return ""
  47. }
  48. agency = fieldReg1.ReplaceAllString(agency, "")
  49. if utf8.RuneCountInString(agency) < 4 {
  50. agency = ""
  51. }
  52. return agency
  53. }
  54. // 联系人
  55. func CleanContactPerson(person string) string {
  56. if person == "无" {
  57. return ""
  58. }
  59. person = fieldReg1.ReplaceAllString(person, "")
  60. if utf8.RuneCountInString(person) < 2 {
  61. person = ""
  62. }
  63. return person
  64. }
  65. // 联系方式
  66. func CleanContactTel(tel string) string {
  67. if tel == "无" {
  68. return ""
  69. }
  70. tel = fieldReg1.ReplaceAllString(tel, "")
  71. if utf8.RuneCountInString(tel) < 6 {
  72. tel = ""
  73. }
  74. return tel
  75. }