免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: 夏洛特猫
打印 上一主题 下一主题

[文本处理] sed,awk多条件匹配求助帖 [复制链接]

论坛徽章:
6
15-16赛季CBA联赛之浙江
日期:2021-07-14 11:18:4315-16赛季CBA联赛之浙江
日期:2021-08-20 17:26:1015-16赛季CBA联赛之天津
日期:2021-09-01 10:56:4619周年集字徽章-19
日期:2021-10-12 11:08:032016科比退役纪念章
日期:2021-10-12 11:33:4515-16赛季CBA联赛之深圳
日期:2021-11-11 14:25:38
11 [报告]
发表于 2022-04-20 15:17 |只看该作者
  1. sed -r "s/([\'\"]),([\'\"])/\1\|\2/g" file
复制代码

论坛徽章:
6
15-16赛季CBA联赛之浙江
日期:2021-07-14 11:18:4315-16赛季CBA联赛之浙江
日期:2021-08-20 17:26:1015-16赛季CBA联赛之天津
日期:2021-09-01 10:56:4619周年集字徽章-19
日期:2021-10-12 11:08:032016科比退役纪念章
日期:2021-10-12 11:33:4515-16赛季CBA联赛之深圳
日期:2021-11-11 14:25:38
12 [报告]
发表于 2022-04-20 15:39 |只看该作者
本帖最后由 a5love3n 于 2022-04-20 15:59 编辑
  1. <div class="blockcode"><blockquote>通用型
  2. sed -r -e 's/(\"[^\"]*\"[^,]*),/\1\|/g' -e "s/('[^']*'[^,]),/\1\|/g"
  3. 可以实现以下效果
  4. 文本
  5. "abc","ab(a,b)c"A,B'aba,ec+c()'B,"aabcd"
  6. 效果
  7. "abc"|"ab(a,b)c"A|B'aba,ec+c()'B|"aabcd"
复制代码

论坛徽章:
25
程序设计版块每日发帖之星
日期:2016-05-03 06:20:0015-16赛季CBA联赛之八一
日期:2018-07-05 10:34:09黑曼巴
日期:2018-07-06 15:19:5015-16赛季CBA联赛之佛山
日期:2018-08-03 13:19:3315-16赛季CBA联赛之山西
日期:2018-08-07 19:46:2315-16赛季CBA联赛之广夏
日期:2018-08-08 19:31:5015-16赛季CBA联赛之青岛
日期:2018-11-26 15:21:5015-16赛季CBA联赛之上海
日期:2018-12-11 09:45:3219周年集字徽章-年
日期:2020-04-18 23:54:5215-16赛季CBA联赛之深圳
日期:2020-04-19 21:40:19黑曼巴
日期:2022-04-03 17:55:1315-16赛季CBA联赛之八一
日期:2018-07-03 16:56:46
13 [报告]
发表于 2022-06-09 11:48 |只看该作者
回复 1# 夏洛特猫


  1. cat 1                                                                                                  
  2. "abc","ab(a,b)c",'aba,ec+c()',"aabcd"

  3. awk 'BEGIN{FS=OFS=""}{for(i=1;i<=NF;i++){if($i~"\042|\047"){a=a?0:1}else if($i~","){$i=!a?"|":$i}}}1' 1
  4. "abc"|"ab(a,b)c"|'aba,ec+c()'|"aabcd"
复制代码

论坛徽章:
6
程序设计版块每日发帖之星
日期:2015-12-05 06:20:00数据库技术版块每日发帖之星
日期:2016-02-06 06:20:00数据库技术版块每日发帖之星
日期:2016-03-07 06:20:00程序设计版块每日发帖之星
日期:2016-06-04 06:20:00黑曼巴
日期:2017-02-06 16:31:2615-16赛季CBA联赛之广夏
日期:2017-05-07 09:02:07
14 [报告]
发表于 2022-11-07 09:35 |只看该作者
回复 13# wh7211
多谢,自己用的笨的方法直接转换成另一个字符之后在二次格式区分,这次学习到了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP