[英]javascript regular expression to not match a word
如何使用 javascript 正則表達式檢查與某些單詞不匹配的字符串?
例如,我想要一個函數,當傳遞包含abc
或def
的字符串時,返回 false。
'abcd' -> 假
'cdef' -> 假
'bcd' -> 真
編輯
最好,我想要一個像 [^abc] 這樣簡單的正則表達式,但它沒有提供預期的結果,因為我需要連續的字母。
例如。 我想要myregex
if ( myregex.test('bcd') ) alert('the string does not contain abc or def');
語句myregex.test('bcd')
被評估為true
。
if (!s.match(/abc|def/g)) {
alert("match");
}
else {
alert("no match");
}
這是一個干凈的解決方案:
function test(str){
//Note: should be /(abc)|(def)/i if you want it case insensitive
var pattern = /(abc)|(def)/;
return !str.match(pattern);
}
function test(string) {
return ! string.match(/abc|def/);
}
這可以通過兩種方式完成:
if (str.match(/abc|def/)) {
...
}
if (/abc|def/.test(str)) {
....
}
function doesNotContainAbcOrDef(x) {
return (x.match('abc') || x.match('def')) === null;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.