jsjcjsjc

这个可以用正则表达式做到吗?GPT 聊了半天了

  •  
  •   jsjcjsjc · Feb 22, 2024 · 4433 views
    This topic created in 986 days ago, the information mentioned may be changed or developed.

    想把标记字符 mark123 之间的回车删除 比如原始样本:

    mark123
    test
    test
    test
    test
    test
    test
    mark123
    test
    mark123
    mark123
    mark123
    test
    test
    mark123
    mark123
    

    删除编辑 mark123 之前的回车,当然 test 是随机字符,但 mark123 是确定的

    mark123testtesttesttesttesttest
    mark123test
    mark123
    mark123
    mark123testtest
    mark123
    mark123
    

    感谢

    7 replies  •  2024-02-23 11:46:07 +08:00
    nagisaushio
    nagisaushio
    Feb 22, 2024
    1
    python

    re.sub('\s(?!mark123)', '', s)
    NoOneNoBody
    NoOneNoBody
    Feb 22, 2024
    2
    你的编辑器支持多行正则就可以了
    jsjcjsjc
    jsjcjsjc
    OP
    Feb 22, 2024
    3
    @NoOneNoBody notepad++可以吗?
    NoOneNoBody
    NoOneNoBody
    Feb 22, 2024
    4
    @jsjcjsjc #3
    没用过,一般都可以,主要是 windows 格式的文本的话要注意,换行符是两个字符,单纯\n 是不行的,要\n\r
    zhanglintc
    zhanglintc
    Feb 23, 2024
    5
    光是 notepad++应该是不行的
    chaosuxiong
    chaosuxiong
    Feb 23, 2024❤️2
    6
    可以分两步做
    1.去掉所有换行
    2.按 mark123 分割换行
    (mark123)(((?!mark123).)*)
    $1$2\n
    zhanglintc
    zhanglintc
    Feb 23, 2024
    7
    @chaosuxiong #6 "1.去掉所有换行" => 这个思路好
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1492 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 23:00 · PVG 07:00 · LAX 15:00 · JFK 18:00
    ♥ Do have faith in what you're doing.