Regex 升华文本查找和替换“;"富",;在所有情况和组合中,除非它变成另一个词,即;“foobar”;
我知道这是一个基本正则表达式的可能性,但我似乎无法确定要使用的正确表达式Regex 升华文本查找和替换“;"富",;在所有情况和组合中,除非它变成另一个词,即;“foobar”;,regex,replace,sublimetext3,Regex,Replace,Sublimetext3,我知道这是一个基本正则表达式的可能性,但我似乎无法确定要使用的正确表达式 我想做的是在一组不同的情况下找到并替换“foo”和“foo”,例如;abc_-foo,abc_-foo[something],abc-foo-something,以及所有不同的组合,除非它变成另一个单词,比如“foobar”。基本的“整词”搜索功能很接近,但在考虑变量和下划线时没有帮助 您可以使用否定的前瞻断言来完成此操作。使用regex search,foo(?!bar)将匹配foo的任何实例(后面没有bar),并且以下
我想做的是在一组不同的情况下找到并替换“foo”和“foo”,例如;abc_-foo,abc_-foo[something],abc-foo-something,以及所有不同的组合,除非它变成另一个单词,比如“foobar”。基本的“整词”搜索功能很接近,但在考虑变量和下划线时没有帮助 您可以使用否定的前瞻断言来完成此操作。使用regex search,
foo(?!bar)
将匹配foo的任何实例(后面没有bar),并且以下文本不是匹配的一部分,只有foo是。匹配本身不包含单词字符的字符串实际上并不是那么简单:
如果您的语言支持,这是非常罕见的情况,那么很简单:
(?<!\w)foo(?!\w)
e、 g.在javascript语法中:
str.replace(/(^|[\W_])foo([\W_]|$)/g, "$1replacement$2");
这工作做得很好!你就是那个人,谢谢!轻微偏离主题:1美元和2美元是否告诉引擎在替换前后保持角色不变?在这种情况下,是的,但一般来说,这是捕获组1和组2的全部内容,而不仅仅是单个角色。。
str.replace(/(^|[\W_])foo([\W_]|$)/g, "$1replacement$2");