首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
拉勾
V2EX  ›  程序员

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

  •  
  •   praynise · 304 天前 · 1049 次点击
    这是一个创建于 304 天前的主题,其中的信息可能已经有所发展或是发生改变。
    请问如何按照空格分割一串字符,但是引号内的空格不在分割范围内?
    例如:cmd="df -h" login=true 想分割成 cmd="df -h" 和 login=true 而不想分割成 cmd="df 和 -h" 和 login=true,谢谢大家
    7 回复  |  直到 2018-05-26 00:42:30 +08:00
        1
    runnerlee   304 天前
    ```
    /[a-zA-Z0-9]+=[\'"]?[^'"]*[\'"]?/
    ```

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

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

    cmd="df -h" login=true cmd="df -h" login=true
        4
    qfdk   304 天前 via iPhone
    split('" ') 就好了按照双引号 空格分割
        5
    runnerlee   304 天前
    @LadyChunsKite 的确, 感谢指出
        6
    bkqzjr   304 天前
    / (?!.+")/g
        7
    faketemp   304 天前 via iPhone
    (.+?)(?<=”)\s(.+?)
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4057 人在线   最高记录 4385   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 21ms · UTC 03:06 · PVG 11:06 · LAX 20:06 · JFK 23:06
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1