• 请不要在回答技术问题时复制粘贴 AI 生成的内容
praynise
V2EX  ›  程序员

正则小白求教一个正则表达式…

  •  
  •   praynise · May 25, 2018 · 3291 views
    This topic created in 3086 days ago, the information mentioned may be changed or developed.
    请问如何按照空格分割一串字符,但是引号内的空格不在分割范围内?
    例如:cmd="df -h" login=true 想分割成 cmd="df -h" 和 login=true 而不想分割成 cmd="df 和 -h" 和 login=true,谢谢大家
    7 replies  •  2018-05-26 00:42:30 +08:00
    runnerlee
    runnerlee
    May 25, 2018
    1
    ```
    /[a-zA-Z0-9]+=[\'"]?[^'"]*[\'"]?/
    ```

    这样可以不?
    LadyChunsKite
    LadyChunsKite
    May 25, 2018
    2
    不用正则,写代码:一个空格前面有偶数个引号,就可以拆分。奇数个引号,就不拆分。
    LadyChunsKite
    LadyChunsKite
    May 25, 2018❤️1
    3
    @runnerlee

    文本假如是这样的,你的方法就挂了,你对引号的判断,至少要是同时出现,或者都不出现:

    cmd="df -h" login=true cmd="df -h" login=true
    qfdk
    qfdk
    PRO
    May 25, 2018 via iPhone
    4
    split('" ') 就好了按照双引号 空格分割
    runnerlee
    runnerlee
    May 25, 2018
    5
    @LadyChunsKite 的确, 感谢指出
    bkqzjr
    bkqzjr
    May 25, 2018
    6
    / (?!.+")/g
    faketemp
    faketemp
    May 26, 2018 via iPhone
    7
    (.+?)(?<=”)\s(.+?)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1537 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 17:55 · PVG 01:55 · LAX 09:55 · JFK 12:55
    ♥ Do have faith in what you're doing.