当我的字符串不以MY和BY开头时,我需要正则表达式匹配。
我尝试了类似
的内容r = /^my&&^by/
但对我不起作用
例如
mycountry = false; byyou = false; xyz = true;
答案 0 :(得分:4)
您可以测试字符串是否不以by
或my
开头,不区分大小写。
var r = /^(?!by|my)/i;
console.log(r.test('My try'));
console.log(r.test('Banana'));
没有!
var r = /^([^bm][^y]|[bm][^y]|[^bm][y])/i;
console.log(r.test('My try'));
console.log(r.test('Banana'));
console.log(r.test('xyz'));
答案 1 :(得分:0)
如果你只关心字符串开头的特定文本,那么你可以使用最新的js字符串方法.startsWith
let str = "mylove";
if(str.startsWith('my') || str.startsWith('by')) {
// handle this case
}
答案 2 :(得分:-1)
试一试(正则表达式不区分大小写):
var r = /^([^bm][y])/i; //remove 'i' for case sensitive("by" or "my")
console.log('mycountry = '+r.test('mycountry'));
console.log('byyou= '+r.test('byyou'));
console.log('xyz= '+r.test('xyz'));
console.log('Mycountry = '+r.test('Mycountry '));
console.log('Byyou= '+r.test('Byyou'));
console.log('MYcountry = '+r.test('MYcountry '));
console.log('BYyou= '+r.test('BYyou'));