相关疑难解决方法(0)

不区分大小写'包含(字符串)'

有没有办法让以下返回true?

string title = "ASTRINGTOTEST";
title.Contains("string");
Run Code Online (Sandbox Code Playgroud)

似乎没有一个过载允许我设置区分大小写.目前我大写它们两个,但这只是愚蠢(我指的是上下套管的i18n问题).

更新
这个问题是古老的,从那时起我就意识到,如果你想完全研究它,我会要求一个简单的答案来解决一个非常庞大和困难的话题.
对于大多数情况,在单语言的英语代码库中,这个答案就足够了.我怀疑是因为大多数人来到这个类别这是最受欢迎的答案.然而,
这个答案提出了一个固有的问题,即我们无法比较文本不区分大小写,直到我们知道两个文本是相同的文化并且我们知道文化是什么.这可能是一个不太受欢迎的答案,但我认为它更正确,这就是为什么我这样标记它.

c# string contains case-insensitive

2785
推荐指数
23
解决办法
83万
查看次数

忽略字符串比较中的重音字母

我需要比较C#中的2个字符串,并将重音字母与非重音字母相同.例如:

string s1 = "hello";
string s2 = "héllo";

s1.Equals(s2, StringComparison.InvariantCultureIgnoreCase);
s1.Equals(s2, StringComparison.OrdinalIgnoreCase);
Run Code Online (Sandbox Code Playgroud)

这两个字符串需要相同(就我的应用程序而言),但这两个语句都评估为false.C#中有没有办法做到这一点?

c# string localization

128
推荐指数
4
解决办法
6万
查看次数

复杂的"包含"字符串比较

我正在开发一个C#4.5应用程序,我需要一个函数来返回true以进行以下比较:

"blaLéOnArd/ o bla".ComplexContains("leonardo")

换句话说,我string.Compare(str1, str2, CultureInfo.InvariantCulture, CompareOptions.IgnoreCase | CompareOptions.IgnoreSymbols | CompareOptions.IgnoreNonSpace)还需要检查"包含!

有人可以帮忙吗?

c# string-comparison

14
推荐指数
1
解决办法
3133
查看次数

删除字符串中的重音符号,除了"ñ"

我有以下示例代码:

var inputString = "ñaáme";
inputString = inputString.Replace('ñ', '\u00F1');
var normalizedString = inputString.Normalize(NormalizationForm.FormD);
var result = Regex.Replace(normalizedString, @"[^ñÑa-zA-Z0-9\s]*", string.Empty);
return result.Replace('\u00F1', 'ñ'); // naame :(
Run Code Online (Sandbox Code Playgroud)

我需要规范化文本而不删除"ñ"

我按照这个例子 但它是针对Java的,它对我没用

我希望你的结果是:"ñaame".

c# regex normalization utf-16

6
推荐指数
1
解决办法
874
查看次数