(^|\s)
次の表現の目的を知っていますか?
/(^|\s)(apple|orange|lemon)(\s|$)/.test(foo);
(^|\s)
文字列または空白文字の先頭に一致します。
したがって、文字列に「apple it is」と表示されている場合、または「I want aapple」と表示されている場合は、一致します。
最初のケースでは「apple」と一致し、2番目のケースでは「apple」と一致することに注意してください。
余分なスペースが一致していることに注意してください。その動作が望ましくない場合は、代わりに単語の境界を使用する必要があります(によって与えられ\b
ます)。
例えば:
/\b(apple|orange|lemon)\b/
これにより、一致するすべてのリンゴが「リンゴ」または他のバリアントではなく、「リンゴ」と正確に一致するようになります。
^
文字列の先頭( )またはスペース文字( )のいずれかを意味します\s
。
したがって、次の場合に一致する必要があります:"apple"
、" apple"
。
^
これは、正規表現が文字列の先頭( )または( )とスペース( )|
で始まる他の何か(正規表現の残りの部分)と一致することを意味します\s