javascript正则表达式"子字“;代替
javascript regexp "subword" replace
我有一个类似的短语
"我周围的一切都在改变,奇妙的事情+,tthingxx"
我想修改每个单词末尾包含***thing的单词,或者最多修改"thing"后面的另一个字符,比如"+"、"h"或"x"。。。
类似的东西
string = 'everything is changing around me, wonderful thing+, tthingxx'
regex = new RegExp('thing(''+|[g-z])$','g');
string = string.replace(regex, '<b>thing$1</b>');
我想要什么?每一件的事情都在改变着我,美妙的事情+,tthingxx
我的正则表达式的结果是什么?任何工作。。。如果我删除$all,则包含"thing"的单词以及匹配后的至少另一个字符:
我周围的一切都在改变,美妙的thing+,tthingxx
我试过了所有的东西,但首先我不能很好地理解技术英语,其次我没有找到答案。
我该怎么办???提前感谢
我发现的解决方案是使用这个正则表达式
/thing([+g-z]){0,1}'b/g
或者使用RegExp(我需要它,因为我必须传递一个变量):
myvar = 'thing';
regex = new RegExp(myvar + "([+g-z]){0,1}''b" , "g");
在第二种模式下执行正则表达式时,我缺少转义符。但这还不够:+超出了<b我真的不知道为什么!!!
我想要的解决方案是@Qtax:的解决方案
/thing([+g-z])?(?!'w)/g
感谢社区
要解决使用'b
时+
不匹配的问题,可以使用(?!'w)
而不是'b
,例如:
thing[+g-z]?(?!'w)
在正则表达式中使用边界
'b'w+thing('+|[g-z])?'b
如果我理解你想要什么,那么:
string = 'everything is changing around me, wonderful thing+, tthingxx';
string = string.replace(/thing('b|[+g-z]$)/g, '<b>thing$1</b>');
结果是:
每<b> 事情<b> 正在改变着我,美妙的<b> 事情<b> +,tthingxx
'b
是一个单词边界,所以正则表达式所说的是它在字符串末尾找到单词边界或+
或g-z
的任何地方,进行替换。
相关文章:
- 使用Mongoose在字段的子字符串上填充
- 查找包含子对象MongoDb和Node.js的特定字段的文档
- 阻止子域中某处包含特定字词的网址
- 从 Rally 构建的 extjs 组合框中,如何获取子 ChangeSet 记录上的字段
- 在输入字段中使用子字符串
- 使用 JSON 将所有字段从子页面传递到父页面
- 删除不存在的字段的子字段
- 主干模型保存:将字段作为“模型”子对象发送
- 从数据库中选择父选项字段时填充子选项字段的简单方法)
- 按数组分组并在主数组中添加字段和子数组
- 如何以角度显示动态子字段
- 如果选中复选框,则仅验证子输入字段formvalidation
- 在 Javascript 中创建子类时,为什么要分配原型字段
- 用猫鼬更新子字段
- javascript正则表达式"子字“;代替
- 处理在余烬视图中TextField子字段的模糊
- 如何从父字段中自动填充子字段选择
- 根据传递的变量动态添加子字段名
- 我怎么能从这个字符串和它的子字在一行中得到id
- 流星用户不同步已发布的配置文件子字段