It is verified that [\u4e00-\u9fff]
can match chinese characters in vim.
:%g/[\u4e00-\u9fff]/d
The command above can delete all the lines containing chinese characters.
ls /tmp/test
ktop 1_001.png.bak
fonts.dir.bak
New
Screenshot from 2016-09-12 16:50:29.png.bak
你好
Now i want to extract files whose name is chinese characters.
ls /tmp/test |grep -P '[\x4e\x00-\x9f\xff]'
The command can't get files whose name is chinese characters.
How to fix it?
ls /tmp/test | grep -v '[a-z]' can get it ,but it is what i want.
To match just lines (filenames) that have Han (Chinese) characters, you can use
[\p{Han}]
:\p{Han}
is one Unicode-script category property usable in any PCRE-supporting engine: