2015-05-20 4 views
2

Я пытаюсь удалить все A-z из этой строки:Удалить все [Az] из строки

aosif$!oias832unaca818 

До сих пор у меня есть

[^A-z]+ 

Однако, мне это нужно, чтобы не остановить как только он найдет первый матч. Я думал, что это то, что жадно делал :)

+3

Каков ожидаемый результат? Кроме того, что именно вы хотите удалить, * только неанглийские буквы *? –

+2

какой язык вы используете? в javascript, например, вы должны добавить модификатор 'g' для соответствия всем событиям –

+0

На каком языке вы предпочитаете? – NaN

ответ

5

Ум, что [A-z] диапазон также включает некоторые не-буквы (см. [A-z] and [a-zA-Z] difference).

Использование

[A-Za-z] 

Замените пустую строку.

См demo - результат - $!832818

В Notepad ++, вы можете отключить случай соответствия (Учитывать регистр должен быть выключен), а затем использовать более простой [a-z] регулярное выражение:

enter image description here

2

попробовать сделав это в своем редакторе:

заменить все [a-zA-Z] пустым.

Возможно, вам потребуется включить опцию regex, в зависимости от вашего редактора.

тест с СЕПГОМ:

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

Вы упоминаете в комментариях вашей исполаяся нп ++

в поиске просто поставить [a-z] заменить отпуск как пустое жало, установите флажок регулярок и снимите флажок «Учитывать регистр ". замените все, и у вас есть необходимый результат.

Смежные вопросы