0
當試圖停止在字符串中匹配單引號(')
時遇到此問題。帶文字和單引號的Javascript正則表達式
以下是Chrome中控制檯會話的摘錄。 Params是我試圖匹配的正則表達式(不應該允許單引號或雙引號?)。我預料前兩位高管會找到一場比賽,而後兩位由於文中的單引號而失敗。
假設這產生了兩個問題:
- 爲什麼字面行爲不同的變量?
- 爲什麼第三位執行官找不到匹配的單引號?
感謝
> params
>
>> "^[a-zA-Z0-9 -_/&,()\[\];:+~.!\\]*$"
>
>
> new RegExp(params).exec("some string")
>> ["some string"]
>
> new RegExp("^[a-zA-Z0-9 -_/&,()\[\];:+~.!\\]*$").exec("some string")
>> null
>
>
> new RegExp(params).exec("some string's")
>> ["some string's"]
>
> new RegExp("^[a-zA-Z0-9 -_/&,()\[\];:+~.!\\]*$").exec("some string's")
>> null
再次退出反斜槓。 –
請參閱https://stackoverflow.com/questions/3154394/javascript-regexp-object-creation-problem –
再次轉義反斜槓,即使用'/^[a-zA-Z0-9 -_ \// ()\ [\];:+〜。!\\] * $ /' –