Notepad++ 中的 RegEx 查找和替换字符串
RegEx in Notepad++ to find and replace strings
我试图在 Notepad++ 上使用 RegEx 查找和替换字符串,但无法识别正确的表达式来执行此操作:
这是数据:
TRAIN-II
TRAIN
TRAIN-I
AIRPLANE-II
AIRPLANE
AIRPLANE-I
SHIP-II
SHIP
SHIP-I
好吧,我只想保留以“-II”为后缀的字符串。简单来说,我只想保留:
TRAIN-II
AIRPLANE-II
SHIP-II
有人可以帮忙吗?
使用正则表达式标记行,然后删除未标记的行。
打开搜索 window,然后打开 "Mark" 选项卡。
在 "Find what" 框中输入 -II$
。 Select "Regular expressions"。 Select "Match case" 如果 "II" 必须大写。 Select "Bookmark line"。点击 "Mark all"。期望看到用蓝色圆圈标记的通缉线。使用菜单 => 搜索 => 书签 => 删除未标记的行。
- Ctrl+H
- 查找内容:
^.*(?<!-II)(?:\R|\Z)
- 替换为:
LEAVE EMPTY
- 检查 环绕
- 检查 正则表达式
- 取消选中
. matches newline
- 全部替换
解释:
^ # beginning of line
.* # 0 or more any character but newline
(?<!-II) # negative lookbehind, make sure we haven't -II before the following
(?:\R|\Z) # non capture group, any kind of linebreak (i.e. \r, \n, \r\n) or end of file
截图(之前):
截图(之后):
我试图在 Notepad++ 上使用 RegEx 查找和替换字符串,但无法识别正确的表达式来执行此操作:
这是数据:
TRAIN-II
TRAIN
TRAIN-I
AIRPLANE-II
AIRPLANE
AIRPLANE-I
SHIP-II
SHIP
SHIP-I
好吧,我只想保留以“-II”为后缀的字符串。简单来说,我只想保留:
TRAIN-II
AIRPLANE-II
SHIP-II
有人可以帮忙吗?
使用正则表达式标记行,然后删除未标记的行。
打开搜索 window,然后打开 "Mark" 选项卡。
在 "Find what" 框中输入 -II$
。 Select "Regular expressions"。 Select "Match case" 如果 "II" 必须大写。 Select "Bookmark line"。点击 "Mark all"。期望看到用蓝色圆圈标记的通缉线。使用菜单 => 搜索 => 书签 => 删除未标记的行。
- Ctrl+H
- 查找内容:
^.*(?<!-II)(?:\R|\Z)
- 替换为:
LEAVE EMPTY
- 检查 环绕
- 检查 正则表达式
- 取消选中
. matches newline
- 全部替换
解释:
^ # beginning of line
.* # 0 or more any character but newline
(?<!-II) # negative lookbehind, make sure we haven't -II before the following
(?:\R|\Z) # non capture group, any kind of linebreak (i.e. \r, \n, \r\n) or end of file
截图(之前):
截图(之后):