我有一个由多个类组成的返回字符串:
"xxx1sbu xxx2sdf xxx1sef xxx1sb1 xxx1su xxx1s1 dxxx1s xxx1sdfg xxx1sbf"
我需要正则表达式来搜索字符串并根据以下条件查找类:
1) 课程以 'xxx1s' 开头
2) 类别不超过 7 个字符(字母和数字),不包括后面的空格 ('xxx1sbu')
3) 如果类 ('xxx1sbu') 后面有一个空格,那么它也会被找到,以便将其删除。
然后我使用正则表达式将找到的类替换为
var classesReplaced = classesString.replace(regex, "")
该字符串应如下所示:
"xxx2sdf dxxx1s xxx1sdfg"
到目前为止,我想出的最好的是:
RegExp: /\bxxx1s([a-z1-9])([a-z1-9])(\s)|\bxxx1s([a-z1-9])([a-z1-9])\b/g
pattern: \bxxx1s([a-z1-9])([a-z1-9])(\s)|\bxxx1s([a-z1-9])([a-z1-9])\b
我还尝试使用 javascript 来构建表达式,但它不断剥离 '\b':
var classId = 'xxx1s';
var regex2 = new RegExp('\b'+ classId +'([a-z1-9])([a-z1-9])(\s)|\b'+ classId +'([a-z1-9])([a-z1-9])\b','g');
有没有更好的方法来写这个??我对正则表达式的理解不是很好!
先感谢您