我想选择所有文字字母 s 但不是文字 \ s
(?<!\\)s
在c#中工作,但我无法调整它以使用javascript。如何在javascript中禁用与所有文字 s 匹配的文字 \ s ?
例如int表达式:test \ ss应匹配te s
t \ s s
修改 正如米奇所说,我想要捕捉所有不在文字\
之后的文字答案 0 :(得分:1)
您可以创建DIY边界...
var r = 'test\\ss'.replace(/(^|[^\\])s/gi, '$1ş');
console.log(r); //=> 'teşt\sş'
或使用解决方法:
var r = 'test\\ss'.replace(/(\\)?s/gi, function($0,$1) { return $1 ? $0 : 'ş'; });
答案 1 :(得分:0)
根据您在问题中的评论,请尝试使用
/(?:\B|\s)s/g
在浏览器控制台中尝试此操作以确认其有效
re = /(?:\B|\s)s/g;
str = 'test\\ss';
res = str.match(re)
console.log(str.replace(re, '0'));
res
将有2个结果