从字符串中删除所有 [A-z]

Remove all [A-z] from string

我正在尝试从此字符串中删除所有 A-z

aosif$!oias832unaca818

到目前为止,我有

[^A-z]+

但是,我需要它在找到第一个匹配项后不要停止。我以为这就是贪婪所做的:)

请注意 [A-z] 范围还包括一些非字母(参见 [A-z] and [a-zA-Z] difference)。

使用

[A-Za-z]

替换为空字符串。

查看 demo - 结果 - $!832818

在 Notepad++ 中,您可以关闭大小写匹配(匹配大小写 必须关闭)然后使用更简单的 [a-z] 正则表达式:

尝试在您的编辑器中执行此操作:

将所有 [a-zA-Z] 替换为空。

您可能需要打开 regex 选项,具体取决于您的编辑器。

用 sed 测试:

kent$  echo 'aosif$!oias832unaca818'|sed 's/[a-zA-Z]//g'
$!832818

您在评论中提到您使用 np++

在搜索中只需将 [a-z] 替换为空字符串,选中正则表达式框并取消选中 "match case" 框。全部替换,你得到了所需的结果