直接cv看效果
// 匹配驼峰命名
console.log('allowClear'.match(/([a-z]+)([A-Za-z]+)/))
let str1 = '1.负责界面设计。2.参与方案。3.根据影响力。4.配合质量。5.完成设计。'
console.log(str1.match(/\d.[^\d]*/g));
// 匹配符号内的内容
let str2 = '<ab>-<cd>-<ef>'
console.log(str2.match(/(?<=<)([^<>-]+)(?=>)/g));
// 匹配下划线最后一位
let str3 = 'PRICING_OCPM'
console.log(str3.match(/([^_]+)$/));
// 纯数字输入 或直接 v.replace(/[^\d]/g, "") 即可
// v = 值 decimalPoint = 最多几位小数点
function numInputMap(v, decimalPoint = 2) {
v += ''
// 0开头不能出现多个
v = v.replace(/^0{2,}/g, '0')
// 把非数字的都替换掉,除了数字和.
v = v.replace(/[^\d.]/g, '')
// 保证只有出现一个.而没有多个.
v = v.replace(/\.{2,}/g, '.')
// 必须保证第一个为数字而不是.
v = v.replace(/^\./g, '')
// 保证.只出现一次,而不能出现两次以上
v = v.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.')
// 可输入的小数点位数 动态配置 默认2位
v = v.replace(
new RegExp(`^(-)*(\\d+)\\.(\\d{${decimalPoint}}).*$`),
'$1$2.$3'
)
v = v.replace(/^\d*\.$/g, v.match(/(\d*)/g)[0])
// 获取除了0 后面的所有值
v = /^0\d/g.test(v) ? v.match(/(?<=^0)(\d.*)/g)[0] : v
return +v
}
console.log(numInputMap(13132546.5355));
console.log(numInputMap('0001.33423'));
console.log(numInputMap('abdfgds'));
// 以字符串48长度分割为一组
let str4 = ''.padEnd(336,'0')
console.log(str4.match(/\d{48}/g))
// 转真数组(字符串格式)
let str5 = "[INVENTORY_UNION_SLOT,a,b,c,t,d,h,h]"
console.log(str5.replace(/[\[\]]/g, '').split(','))
// 取出img标签
let str6 = '12adasd3456<<<img src=1234>>>>123414124'
console.log(img.match(/(.*)(<.[^>]*>)/))
// 匹配最后一个/后的内容
let str7 = "https://w.wallhaven.cc/full/28/a/wallhaven-286zdy.png"
console.log(str7.match(/(?<=\/)[^\/]*\.[^\/]*$/g));
End~