[正则表达式初学者]在Sublime Text 3中,我如何找到aa
,使得左边和右边没有a
,并将其替换为aaa
?我试过了:
(?:[^a])(aa)(?:[^a])
但是会选择四个字符。如何仅选择aa
?
答案 0 :(得分:4)
您可以使用否定lookbehind and lookahead:
的组合(?<!a)aa(?!a)
如果当前位置左侧有(?<!a)
,则a
无法匹配,如果(?!a)
立即a
,则class ViewController: UIViewController {
var otherViewController: OtherViewController!
override func viewDidLoad() {
super.viewDidLoad()
otherViewController = OtherViewController()
otherViewController.test = "ABCDFER"
//Do not do this
otherViewController.viewDidLoad()
}
会失败当前位置的权利。
请参阅PCRE regex demo(SublimeText3使用PCRE引擎)。