1

私は文字列を持っています:

'"Apples" AND "Bananas" OR "Gala Melon"'

これを配列に変換したい

arr = ['"Apples"', 'AND', '"Bananas"', 'OR', '"Gala Melon"']

正規表現でできるかどうかわかりません。二重引用符に一致させるには、一度に各文字を解析する必要があるかもしれないと考え始めています。

4

1 に答える 1

5
input = '"Apples" AND "Bananas" OR "Gala Melon"'

output = input.match(/\w+|"[^"]+"/g)
// output = ['"Apples"', 'AND', '"Bananas"', 'OR', '"Gala Melon"']

正規表現の説明:

/- 正規表現の開始
\w+- 一連の単語文字
| - または
"[^"]+"- 引用されたもの (引用符がエスケープされていないと仮定)
/g- 正規表現の終わり、グローバル フラグ (複数の一致を実行)

于 2013-02-13T12:36:45.927 に答える