【发布时间】:2012-12-18 16:23:25
【问题描述】:
我需要在文本中找到单引号并将它们替换为两个单引号,例如:
拉布雷
=>
l''arbre
文本中已经有很多地方有两个单引号,所以我不能只使用查找/替换功能,因为它会同时提取所有这两个单引号,并且它们应该保持不变,无需修改.
有人知道怎么做吗?我想我必须使用正则表达式,但到目前为止我尝试过的都没有真正起作用。
谢谢!
【问题讨论】:
-
我认为有点偏离主题
我需要在文本中找到单引号并将它们替换为两个单引号,例如:
拉布雷
=>
l''arbre
文本中已经有很多地方有两个单引号,所以我不能只使用查找/替换功能,因为它会同时提取所有这两个单引号,并且它们应该保持不变,无需修改.
有人知道怎么做吗?我想我必须使用正则表达式,但到目前为止我尝试过的都没有真正起作用。
谢谢!
【问题讨论】:
按ctrl + h 并在正常模式下(无正则表达式):
1) 将' 替换为''
2) 将'''' 替换为''
【讨论】:
按ctrl + F,转到第二个标签(或ctrl + h)。
([a-zA-Z0-9]+)\'([a-zA-Z0-9]+) 放在第一个输入端。\1"\2 放在第二个输入上。匹配:text'text、09text09'09text09、text'09text09、09text09'text
不匹配:text'、'text、'
【讨论】:
find what: '
replace with: ''
为我工作。不需要正则表达式
【讨论】:
查找内容:([^'])(['])([^'])
替换为:\1''\3
这仅用双引号替换单引号,并保持已经存在的双引号不变
【讨论】:
'blah blah' 试试,你最好使用环视。