这是一个小问题,但它一直在唠叨我。当我在Eclipse中执行查找或查找/替换时,我使用^
或$
并检查正则表达式盒子,我总是收到一条消息:
String Not Found
我不明白为什么。我知道CTRL+SPACE
内容辅助功能,即使从列表中选择^
,它也无效。
我正在看这个问题,Regex to match start of line and end of line for quick find and replace,但这对我不起作用。其他正则表达式搜索,例如^.
或;$
工作正常。
我发现^
和$
是anchor characters,并且本身与字符串不匹配,但这些字符似乎适用于其他编辑器。
修改
例如,我想将数据列表转换为SQL in子句。
自:
1
2
3
Hi
I need to quote these!
要:
'1',
'2',
'3',
'Hi',
'I need to quote these!',
答案 0 :(得分:5)
^
和$
是零宽度的锚点,因此它们本身不会匹配任何东西。您需要使用锚点来匹配文件中的任何内容。
答案 1 :(得分:1)
我能用这个正则表达式替换:
查找:^(\s*)(.*)$
替换:$1'$2',
所以我所做的就是使用:
^
找到该行的开头。(\s*)
查找并捕获任何空白区域。(.*)
找到并捕获任何内容。$
找到行尾。然后用
替换$1
首次捕获'
quote $2
第二次捕获',
引用逗号我希望^
和$
自己合作,但这很酷b / c我可以在一次操作中完成。