Problem with regexp Japanese

2 次查看(过去 30 天)
Dear all,
I want to find the file paths in the large string by regexp such as:
As you see, pattern search was good in https://www.regextester.com/ . but in Matlab, Japanese string could not get as following:
>>str = ['a:\fawe\abc\AddNew_.doc '...
'C:\Users\Desktop\AddNew\_Copy_新しいフォルダーof_a.txt'];
>>pattern = '(?:[\w]\:|\\)(\\[a-zA-Z_\-\s0-9\u3000-\u303F\u3040-\u309F\u30A0-\u30FF\uFF00-\uFFEF\u4E00-\u9FAF\u2605-\u2606\u2190-\u2195\u203B\.]+)+\.(txt|mat|pdf|doc|docx|xls|xlsx|cgt|slx|m)';
>>match_str = regexp(str, pattern, 'match')
match_str =
1×1 cell array
{'a:\fawe\abc\AddNew_.doc'}
Do you have any idea for resolve.
Thank you so much

采纳的回答

Stephen23
Stephen23 2020-3-12
编辑:Stephen23 2020-3-12
The \u syntax is not valid in MATLAB:
\u3000 % !!! NOT CORRECT !!!
To create a character from hexadecimal use \x:
\x3000
So you will need to change all of your \u... into \x....

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by