duanjiao6730 2013-09-09 10:30
浏览 25
已采纳

替换引号但保持英寸

I have text like: Senkatel Maximus 10.1" "White"

I would like to strip the quotes but keep the quote in the inch specification 10.1"

I tried using regex but it does not support variable length negative lookaheads

This: Senkatel Maximus 10.1" "White"

Should become: Senkatel Maximus 10.1" White

I need it as a general solution to stripping quotes without killing the inches in the text, so things like Senkatel Maximus 10.1" "Moonlight blue" and "Senkatel Maximus 10.1"" should also work if possible.

  • 写回答

4条回答 默认 最新

  • donglue8180 2013-09-09 13:05
    关注

    I think you might try this one:

    "(\S(?:\s(?:\d+(?:\.\d+)?)"|[^"])+\S)"
    

    and replace with $1.

    I tested it on some of the samples lying about. regex101 demo.

    EDIT:

    If you have to remove quotes from strings like Dims: A" x B" as well (i.e. only numbers followed by double quotes have to be kept, unless in situations like "Film: 300", then you can use a regex a bit like SmokeyPHP's and adding a part I made above to give this:

    (^|[^0-9])"((\b\d+(?:\.\d+)?"|[^"])+)"
    

    Some samples have been tested here. (Note the were added on the demo because the regex was being tested on several strings and can be removed when testing on a string by string basis).

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)