相关疑难解决方法(0)

从字符串中删除所有非ASCII字符

我有一个C#例程,它从CSV文件导入数据,将其与数据库匹配,然后将其重写为文件.源文件似乎有一些非ASCII字符,这些字符会污染处理程序.

我已经有一个静态方法,我运行每个输入字段,但它执行基本检查,如删除逗号和引号.有谁知道如何添加删除非ASCII字符的功能?

c# ascii

47
推荐指数
5
解决办法
6万
查看次数

为什么"ss"等同于德国锋利人物'ß'?

从未来的这个问题,我不知道为什么äae是不同的(这是有道理的),但ßss视为相等.即使这个问题似乎是相关的,我也没有找到答案,甚至提到"这ß将与SS德国或类似的相提并论",但不是为什么.

我发现MSDN上唯一的资源是:如何:比较字符串

这里提到以下但也缺乏原因:

// "They dance in the street." 
// Linguistically (in Windows), "ss" is equal to 
// the German essetz: 'ß' character in both en-US and de-DE cultures. 
.....
Run Code Online (Sandbox Code Playgroud)

那么,为什么要truede-DE文化或任何其他文化进行评估:

var ci = new CultureInfo("de-DE");
int result = ci.CompareInfo.Compare("strasse", "straße", CompareOptions.IgnoreNonSpace); // 0
bool equals = String.Equals("strasse", "straße", StringComparison.CurrentCulture); // true
equals = String.Equals("strasse", …
Run Code Online (Sandbox Code Playgroud)

.net c# windows string string-comparison

34
推荐指数
1
解决办法
7011
查看次数

用英语等价物替换德语字符(变音符号,重音符号)

用英语等价物替换德语字符(变音符号,重音符号)

我需要从各个文本字段中删除任何德语特定字符,以便处理到另一个不接受它们有效的系统.

所以我所知道的人物是:

ßäöüÄÖÜ

目前我有一种手动方式来替换它们:

myGermanString.Replace("ä","a").Replace("ö","o").Replace("ü","u").....
Run Code Online (Sandbox Code Playgroud)

但我希望有一种更简单/更有效的方法.因为我每次运行都会在数千个字符串上进行,其中99%不会包含这些字符.

也许是一种涉及某种CultureInfo的方法?

(例如,根据MS,以下返回的字符串是相等的

String.Compare("Straße", "Strasse", StringComparison.CurrentCulture);
Run Code Online (Sandbox Code Playgroud)

所以必须存在某种转换表?)

.net c# cultureinfo

13
推荐指数
3
解决办法
3万
查看次数

标签 统计

c# ×3

.net ×2

ascii ×1

cultureinfo ×1

string ×1

string-comparison ×1

windows ×1