法律字符串,例如:? * "please help me"
- 是合法的字符串 * "please"help me"
- 是非法字符串,因爲help me"
不以「開頭」。如何檢測一個字符串,不包含「使用通過<code>"</code>開始,以<code>"</code>結束,不應包含在中間<code>"</code>定義柔性
我想在flex中定義一個規則來捕捉合法字符串。 我試圖使用這個規則,但它不工作。編寫規則的 \"^[\"].*\"
法律字符串,例如:? * "please help me"
- 是合法的字符串 * "please"help me"
- 是非法字符串,因爲help me"
不以「開頭」。如何檢測一個字符串,不包含「使用通過<code>"</code>開始,以<code>"</code>結束,不應包含在中間<code>"</code>定義柔性
我想在flex中定義一個規則來捕捉合法字符串。 我試圖使用這個規則,但它不工作。編寫規則的 \"^[\"].*\"
一種方法是
["][^"]*["]
請注意,這是沒有必要反斜槓轉義引號(或其他大多數正則表達式字符),如果他們是一個字符類中,所以["]
是與\"
完全一樣。但我更喜歡它看起來的樣子:)。
你寫的 - 有效["][^"].*["]
- 意思是「一個報價,除了一個報價,任何字符串,一個報價」。你想要的是「一個報價,除報價之外的任何字符串,一個報價」,用上面的正則表達式表示。
如果要堅持字符串中至少包含一個字符,請將*
替換爲+
。
首先謝謝,我認爲你的想法很好,但在某些情況下,它在字符串內部是允許的,這是非法的。知道如何解決它呢? 例如「幫助」「(然後輸入)使字符串等待另一個輸入,它是錯誤的。 –
感謝rici,我設法達成了解決方案。對於任何關心這個問題的人來說,解決方法是[[]] [^「\ n] * [」] –
Fwiw,您從未提及該字符串不能包含換行符,精確的問題描述總是更好。 – rici
也許''[^「] +」' - 但是確切的說呢? – Jan