打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
(python3)str.split()、str.splitlines()、re.split()分句使用方法

一. str.split()

str.split(), 这个不支持正则表达式

  1. text = '六安市政府采购中心受六安市人民医院的委托,现对“鼻声反射仪”项目进行竞争性谈判,欢迎具备条件的国内投标供应商参加投标.'
  2. text.split(',')
  3. """
  4. ['六安市政府采购中心受六安市人民医院的委托', '现对“鼻声反射仪”项目进行竞争性谈判', '欢迎具备条件的国内投标供应商参加投标。']
  5. """

二. str.splitlines()

splitlines() 按照行界符('\r', '\r\n', \n'等)分隔,返回一个包含各行作为元素的列表,默认不包含行界符。能被splitlines()识别的分隔符如下:

行界符 描述
\n Line Feed   换行
\r Carriage Return 回车
\r\n Carriage Return + Line Feed  回车+换行
\v or \x0b Line Tabulation  
\f or \x0c Form Feed 换页
\x1c File Separator 文件分隔符
\x1d Group Separator  组分隔符
\x1e Record Separator 记录分隔符号
\x85 Next Line (C1 Control Code)
\u2028 Line Separator  行分隔符
\u2029 Paragraph Separator 段落分隔符号
  1. text = '六安市政府采购中心受六安市人民医院的委托,\n现对“鼻声反射仪”项目进行竞争性谈判,欢\n迎具备条件的国内投标供应商参加.标 。'
  2. text.splitlines() # 默认使用\n进行分割,默认keepends=False 表示不保留分隔符
  3. print (text.splitlines())
  4. """
  5. ['六安市政府采购中心受六安市人民医院的委托,', '现对“鼻声反射仪”项目进行竞争性谈判,欢', '迎具备条件的国内投标供应商参加投标。']
  6. """
  7. text.splitlines(keepends=True) # 设置keepends=True 保留分隔符
  8. text = '六安市政府采购中心受六安市人民医院的委托,\n现对“鼻声反射仪”项\r目进行竞争性谈判,欢\n迎具备条件的国内投标供应商参.投标。‘ # 文本中添加了\r
  9. text.splitlines(keepends=True)
  10. print (text)
  11. """
  12. ['六安市政府采购中心受六安市人民医院的委托,\n',
  13. '现对“鼻声反射仪”项\r',
  14. '目进行竞争性谈判,欢\n',
  15. '迎具备条件的国内投标供应商参加投标。']
  16. """
  17. # text.split与text.splines异同
  18. text.split()
  19. """
  20. ['六安市政府采购中心受六安市人民医院的委托,', '现对“鼻声反射仪”项', '目进行竞争性谈判,欢', '迎具备条件的国内投标供应商参加投标。']
  21. """
  22. text.splitlines()
  23. """
  24. ['六安市政府采购中心受六安市人民医院的委托,', '现对“鼻声反射仪”项', '目进行竞争性谈判,欢', '迎具备条件的国内投标供应商参加投标。']
  25. """
  26. ''.split('\n')
  27. """
  28. ['']
  29. """
  30. ''.splitlines()
  31. """
  32. []
  33. """

 

 

三. re.split() 

  1. 适用场合:文本中分隔符比较多而且复杂的情况;
  2. 原型:re.split(pattern, string, maxsplit=0) ; pattern表示要分割的字符,pattern如果用()表示保留分隔符,如果用[]表示不保留分隔符,string表示要分割的字符串,maxsplit表示分割的次数,默认一次分割完成,示例如下:
    1. import re
    2. text = '重庆建工建材物流有限公司经集团批准对部分设备进行报废处置,现就处置的设备进行公开招标! 请各投标单位按招标文件内容要求参加投标。'
    3. s_text_1 = re.split(",", text)
    4. print(s_text)
    5. """
    6. ['重庆建工建材物流有限公司经集团批准对部分设备进行报废处置', '现就处置的设备进行公开招标! 请各投标单位按招标文件内容要求参加投标。']
    7. """
    8. s_text_2 = re.split("(,)", text)
    9. print(s_text2)
    10. """
    11. ['重庆建工建材物流有限公司经集团批准对部分设备进行报废处置', ',', '现就处置的设备进行公开招标! 请各投标单位按招标文件内容要求参加投标。']
    12. """
    13. s_text_3 = re.split("[,]", text)
    14. print(s_text)
    15. """
    16. ['重庆建工建材物流有限公司经集团批准对部分设备进行报废处置', '现就处置的设备进行公开招标! 请各投标单位按招标文件内容要求参加投标。']
    17. """
    18. # 说明:从上面结果中可以看出,re.split()默认是用[]的。
    19. # 多个字符分割(text中("!")是英文输入法下的)
    20. s_text_4 = re.split("[,!]", text)
    21. print(s_text_4)
    22. """
    23. ['重庆建工建材物流有限公司经集团批准对部分设备进行报废处置', '现就处置的设备进行公开招标', ' 请各投标单位按招标文件内容 要求参加投标。']
    24. """
    25. text_new = '重庆建工建材物流有限公司经集团批准对部分设备进行报废处置,现就处置的设备进行公开招标, 请各投标单位按招标文件内容要求参加投标。'
    26. s_text_5 = re.split("[,]", text_new, maxsplit=0)
    27. print(s_text_5)
    28. """
    29. ['重庆建工建材物流有限公司经集团批准对部分设备进行报废处置', '现就处置的设备进行公开招标', ' 请各投标单位按招标文件内容 要求参加投标。']
    30. """
    31. s_text_6 = re.split("[,]", text_new, maxsplit=1)
    32. print(s_text_6)
    33. """
    34. ['重庆建工建材物流有限公司经集团批准对部分设备进行报废处置', '现就处置的设备进行公开招标, 请各投标单位按招标文件内容要 求参加投标。']
    35. """
    36. s_text_7 = re.split("[,]", text_new, maxsplit=2)
    37. print(s_text_7)
    38. """
    39. ['重庆建工建材物流有限公司经集团批准对部分设备进行报废处置', '现就处置的设备进行公开招标', ' 请各投标单位按招标文件内容 要求参加投标。']
    40. """

    参考:[1] Python splitlines()方法

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
按分隔符拆分,这个方法真的太爽了!
c++实现split函数
SQL 自定义字符串分割函数
python中的split是什么
Python|split()方法
T-SQL象数组一样处理字符串、分割字符串
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服