相关疑难解决方法(0)

搜索/替换中的Notepad ++ Regex Backreference语法 - \1或$ 1

我试图使用Notepad ++ Search/Replace with Regular Expression将特定单词替换为这些单词的较短版本.


我使用以下正则表达式来匹配每个以er(但不是er一个单词)结尾的单词 - 并r使用反向引用将相匹配的单词替换为相同的单词减去结尾:

Find what: ([a-zA-z]+e)r

Replace with: $1

但它不会取代匹配的单词,即使它找到了它们.

但是,如果我将反向引用语法更改为:

Replace with: \1

一切正常.


为什么$1反向引用不起作用?

两种形式的后退有什么区别 - \1$1

regex backreference replace escaping notepad++

35
推荐指数
1
解决办法
3万
查看次数

Notepad ++ Regex Replace在Notepad ++上不起作用

我试图搜索每个有
bar-foo的单词,并将它们切换到foo-bar,
所以我写了find (\w+)-(\w+)
和替换$2-$1
,而不是写foo-bar,它写了$ 2- $ 1.

是,搜索模式中的正则表达式已启用.
似乎替换正则表达式不起作用并且字面意思

regex notepad++

33
推荐指数
2
解决办法
2万
查看次数

在Perl正则表达式替换中使用$ 1 vs\1有什么区别?

我正在调试一些代码,并想知道Perl正则表达式替换中$ 1和\ 1之间是否存在任何实际差异

例如:

my $package_name = "Some::Package::ButNotThis";

$package_name =~ s{^(\w+::\w+)}{$1};  

print $package_name; # Some::Package
Run Code Online (Sandbox Code Playgroud)

以下这一行似乎功能相同:

$package_name =~ s{^(\w+::w+)}{\1};
Run Code Online (Sandbox Code Playgroud)

这两个陈述之间是否存在细微差别?它们在不同版本的Perl中表现不同吗?

regex perl

11
推荐指数
2
解决办法
2007
查看次数

标签 统计

regex ×3

notepad++ ×2

backreference ×1

escaping ×1

perl ×1

replace ×1