我是瘦子

JavaScript 针对特殊符号或emoji表情的正则判断

记录一些常用的正则到博客中。

1
2
3
4
5
6
7
8
// 判断是否含有特殊符号
let iconRule1 = /[`~!@#$%^&*()_\-+=<>?:"{}|,.\/;'\\[\]·~!@#¥%……&*()——\-+={}|《》?:“”【】、;‘’,。、]/im
// 判断是否含有emoji表情
let iconRule2 = /[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF][\u200D|\uFE0F]|[\uD83C|\uD83D|\uD83E][\uDC00-\uDFFF]|[0-9|*|#]\uFE0F\u20E3|[0-9|#]\u20E3|[\u203C-\u3299]\uFE0F\u200D|[\u203C-\u3299]\uFE0F|[\u2122-\u2B55]|\u303D|[\A9|\AE]\u3030|\uA9|\uAE|\u3030/ig
// 如果为true,字符串含有emoji表情 ,false不含
console.log(iconRule2.test('😺')); // true
// 如果为true,字符串含有特殊符号 ,false不含
console.log(iconRule1.test('【】')) // true