不以 "My" 或 "By" 开头的字符串的正则表达式
Regex for strings not starting with "My" or "By"
当我的字符串不以“MY”和“BY”开头时,我需要匹配正则表达式。
我试过类似的东西:
r = /^my&&^by/
但它对我不起作用
例如
mycountry = false ; byyou = false ; xyz = true ;
您可以测试字符串是否不以 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'));
试试这个(正则表达式不区分大小写):
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'));
如果您只关心字符串开头的特定文本,那么您可以使用最新的 js 字符串方法 .startsWith
let str = "mylove";
if(str.startsWith('my') || str.startsWith('by')) {
// handle this case
}
当我的字符串不以“MY”和“BY”开头时,我需要匹配正则表达式。
我试过类似的东西:
r = /^my&&^by/
但它对我不起作用
例如
mycountry = false ; byyou = false ; xyz = true ;
您可以测试字符串是否不以 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'));
试试这个(正则表达式不区分大小写):
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'));
如果您只关心字符串开头的特定文本,那么您可以使用最新的 js 字符串方法 .startsWith
let str = "mylove";
if(str.startsWith('my') || str.startsWith('by')) {
// handle this case
}