2016-12-14 55 views
1

的文字是: "I like to watch.","\"I like to watch.\"" 正則表達式「」

我想打破文本「我喜歡看」和「\」我喜歡看。「」

使用「[\ w \ W] +?」

,但得到「我喜歡看」,「\」,

什麼是合適的表情?

+2

爲什麼不','拆呢? –

+0

@MuratK:你不能在這裏用','分割。 –

+0

文本可能是「我喜歡看」。\ n \ t「\」我喜歡看。\「」或「我喜歡看」之間的任何字符串。和「\」我喜歡看。\「」@ MuratK。 – lsdoy

回答

2

您需要使用

"[^"\\]*(?:\\.[^"\\]*)*" 

regex demo

詳細

  • " - 雙引號
  • [^"\\]* - 任何0+字符除引號和反斜線其他
  • (?:\\.[^"\\]*)* - 零個或更多序列:
    • \\. - 反斜線和除換行符之外的其他字符char
    • [^"\\]* - 除引號和反斜線
  • "其他任何字符0+ - 一個雙引號
+0

如果你的正則表達式中沒有DOTALL修飾符,那''''可以替換成'[\ s \ S]'。 –

+0

哇,好工作! – lsdoy