我有以下代碼:JavaScript的正則表達式來檢查搜索字符串由要麼沒有之前或空格
var requestData = {};
var byPattern = /by=(\w+)/;
var value = byPattern.exec(stringToSearch);
if (value && value.length === 2)
requestData.by = value[1];
與此正則表達式的第一個問題,就是如果stringToSearch
是例如「待機= FOO 「,它匹配並返回」foo「。我希望它在那裏失敗。我希望正則表達式匹配只有在沒有之前「by」或空格。
所以我換成/^\s*by=(\w+)/
這是好,但我想匹配正則表達式,如果stringToSearch
是例如「城市= =由巴黎FOO」。它應該匹配並返回「foo」。不是這裏的情況:/
有人可以幫我修復正則表達式嗎?非常感謝!
此解決方案也適用。我應該接受哪一個? – Blackbird
@黑鳥你使用的那個。如果你想拒絕'stand-by = 3',選擇我的;-) –
如果你想匹配一般的空白空間(不只是空格鍵,而是tab,newline,&c。),使用'/(\ S | ^)由=(\ W +)/' – Malvolio