Sublime Bug with Regular Expressions

时间:2015-02-06 14:38:13

标签: regex sublimetext2 sublimetext

我尝试进行崇高的正则表达式搜索并使用反向引用进行替换。这是我的数据集:

if(requestType.endsWith("CompleteMulti")) {
if(requestType.endsWith("CompletePartial")) {
if(requestType.endsWith("Unfulfillable")) {

当我运行正则表达式时:

^.+"(\w+)".+$

with replace statement:

$1

我得到以下输出:

completemuLti
completepaRtial
unfulfillaBle

正如你所看到的那样,这些字母的情况都变得棘手了。 我使用版本2.0.2,Build 2221

这是一个已知问题吗?一些谷歌搜索没有发现任何数据。如果有人知道解决方法,请告诉我。

1 个答案:

答案 0 :(得分:4)

在执行"替换所有"之前,取消选择"保留案例" ( ALT + A

"保留案例"将保留在之前处于该位置的字符的大小写。快速演示:

if(requestType.endsWith("CompleteMulti")) {
if(requestType.endsWith("CompletePartial")) {
if(requestType.endsWith("Unfulfillable")) {
completemuLti
completepaRtial
unfulfillaBle

          ^ only this character is left in upper case

另一个例子。这次我们将取代"崇高"与"香蕉",使用不区分大小写的正则表达式和"保留案例"选自:

在:

SUblime
suBLime
sublIME

后:

BAnanas
baNAnas
banaNAS

在回应IcedD​​ante的评论时,我可以想到一个用例,它会成为所希望的行为(虽然可能是设计的)。想象一下你发给一些大学的一封信:

  

亲爱的布拉赫敦大学,

     

我正在写信询问你的应用生物学101课程,就像我一样   了解你是生物学领域的领先学校。我有   一直对生物学研究领域有浓厚的兴趣   本课程,应用生物学101,特别感兴趣。

然后你想询问地理课程,你可以找到/替换" biolog"与" geograph",维持案例:

  

亲爱的布拉赫敦大学,

     

我正在写信询问你的应用地理101课程,就像我一样   了解你是地理领域的领先学校。一世   一直对地理研究领域有浓厚的兴趣   因此,本课程“应用地理101”特别令人感兴趣。

非常做作,我知道。

注意 - 我已尝试在文档中查找对此的引用,但我找不到任何明确的内容......