【发布时间】:2016-06-07 10:40:11
【问题描述】:
我想从我的 UTF8 文本中删除所有特殊字符,但我找不到任何匹配的正则表达式。
我的文字是这样的:
ASDÉÁPŐÓÖŰ_->,.!"%=%!HMHF
我只想删除这些字符:_->,.!"%=%!
我试过这个正则表达式:
result = Regex.Replace(text, @"([^a-zA-Z0-9_]|^\s)", "");
但它也会删除我的 uft8 字符。
我不想删除重音字符,但我想删除所有字形。
【问题讨论】:
-
请定义“特殊字符”。 Uncode 包含数以万计的分类字符:说明您要保留哪些类别将是一个开始(并且“utf8 char”没有任何意义,UTF-8 只是将 Unicode 代码点编码为八位字节流,它说与字符分类无关)。
-
\P{L}应该匹配任何不是字母的东西。 -
我不认为它是重复的。我不需要确定它是否包含 utf-8。我想从 utf8 字符串中删除所有字形和其他字形。我不想删除重音字符...