This is a mobile optimized page that loads fast, if you want to load the real page, click this text.

e cần hỗ trợ trong tìm kiếm và xoá Sublime Text hoặc một phần mềm nào đó

Le Duc 287

Rìu Vàng
e được nhờ xoá các số trong văn bản từ -1 đến -7000 và kiểm tra trước dấu - là một chữ cái bất kỳ thì mới xoá.
các bác thể cho em xin biểu thức chính quy đó để tìm kiếm và thay thế các số từ -1 đến -7000 chỉ xoá khi trước dấu "-" là một chữ cái bất kỳ trong Sublime Text hoặc một phần mềm nào đó. Cảm ơn các bác đã xem bài viết ạ
 

malemkhoang

Rìu Chiến
@Le Duc 287
Một chữ cái bất kỳ ở đầu dòng: ^[a-zA-Z]{1}+
tiếp theo là dấu "-": [-]+
tiếp theo là một chữ số từ 1 đến 7: [1-7]{1}+
tiếp theo là ba chữ số từ 0 đến 9 ở cuối dòng: [0-9]{1,3}$

Ghép lại: ^[a-zA-Z]{1}+[-]+[1-7]{1}+[0-9]{1,3}$
Nếu không quan tâm đến đầu dòng, cuối dòng thì có: [a-zA-Z]{1}+[-]+[1-7]{1}+[0-9]{1,3}
Tìm thấy thì xoá.

Tôi không cho rằng biểu thức của tôi là tối ưu, nhưng nó làm việc đúng yêu cầu (vừa học xong).​
 

malemkhoang

Rìu Chiến
Xong lại phát hiện thấy sai.
Tạm thời tôi dùng hai biểu thức:
Biểu thức thứ nhất:
^[a-zA-Z]{1}+[-]+[1-6]{1}+[0-9]{1,3}$
Biểu thức thứ hai:
^[a-zA-Z]{1}+[-]+[7]{1}+[0]{1,3}$
 

malemkhoang

Rìu Chiến
Ghép hai biểu thức trên lại:
(^[a-zA-Z]{1}+[-]+[1-6]{1}+[0-9]{1,3}$|^[a-zA-Z]{1}+[-]+[7]{1}+[0]{1,3}$)
hoặc:
([a-zA-Z]{1}+[-]+[1-6]{1}+[0-9]{1,3}|[a-zA-Z]{1}+[-]+[7]{1}+[0]{1,3})
 

Le Duc 287

Rìu Vàng
Ghép hai biểu thức trên lại:
(^[a-zA-Z]{1}+[-]+[1-6]{1}+[0-9]{1,3}$|^[a-zA-Z]{1}+[-]+[7]{1}+[0]{1,3}$)
hoặc:
([a-zA-Z]{1}+[-]+[1-6]{1}+[0-9]{1,3}|[a-zA-Z]{1}+[-]+[7]{1}+[0]{1,3})
biểu thức thứ 2 của bạn xoá cả chữ cái. dựa vào biểu thức của bạn Tôi tạo ra biểu thức sau
(?<=[a-zA-Z])-([1-6]?\d{1,3}|7000)\b
đã test ọk chỉ xoá dấu -và số không xoá chữ cái, và chỉ xoá -và số khi đằng trước là một chữ cái