问题标签 [stringcomparer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 不区分大小写的数组。包含在 Linq 查询中
我正在尝试在 Linq 查询中的字符串数组上使用 Array.Contains:
评估查询时,它会因“用于查询运算符'包含'的不支持的重载而崩溃。
我使用 StringComparer 测试了这段代码,它工作正常并打印出“fOO”:
谁能告诉我如何在 Linq 查询中使用不区分大小写的 Array.Contains?我不想转换原始字符串 ToUpper() 或 ToLower() 因为它很昂贵并且会更改原始数据。
c# - .NET 中多次调用的 StringComparer.CurrentCultureIgnoreCase 效率
我一直在使用StringComparer.CurrentCultureIgnoreCase
不区分大小写的比较和散列。但是在检查了参考源之后,我看到它在每次调用时都会创建一个新实例(那么它不应该是一个静态函数吗?只是为了形式)。无论如何,我的问题是,当您要进行多次比较时,例如IEquality<T>
实现,这样做是否有效:
或者可能:
或者甚至缓存/汇集比较器,以便每次Equals()
调用时都不会创建它们?
有什么感觉是最佳实践吗?
(感谢 michael-liu 指出对 OrdinalIgnoreCase 的原始引用不是一个新实例,我已经切换到 CurrentCultureIgnoreCase 是)
c# - 列表C# 自定义排序。数字后划线
我有一个列表:“a_a”、“a1a”、“aaa”。
我需要按以下方式对其进行排序:“a1a”、“a_a”、“aaa”。
换句话说,我需要'_'符号出现在数字之后但在字母之前。
我知道可以使用自定义比较器,但我还没有找到任何好的解决方案来解决这个问题,只有肮脏的黑客,例如:
watin - Watin.Core.Comparer StringComparer 类出错
我在我的程序中使用 Watin 系统。
我收到以下错误:
Watin.Core.Comparer
StringComparer(string comparisonValue, bool ignoreCase)的 ArgumentNullException
错误:值不能为 Null(comparisonValue)
但是我不知道谁以及何时调用了 stringcomparer,我也不知道如何调试它。
这是我的一些代码。
添加一些错误跟踪
c# - C#中错误的字符串排序
我跑了这个:
输出是:
这不可能!我期待
可能是什么问题呢?
c# - 任何确认 Array.Sort(charArray, StringComparer.Ordinal) 有效的参考资料?
我想根据 Unicode 表中的序号位置(代码点)对字符数组进行排序。
我看到以下代码有效:
但它看起来有点奇怪。首先是因为这两个参数都是非泛型的,其次,这里我使用 StringComparer 来比较字符。
这能保证工作吗?有什么参考吗?
c# - c# 奇怪的 Dictionary ContainsKey 或 StringComaprer
这是某种奇怪的魔法, ContainsKey 返回 false。我尝试使用具有相同结果的 InvariantCulture 比较器。
错误的
我通过删除键中的引号并再次键入它们来解决它。我想知道为什么会这样。
c# - 比较两个文本文件并显示相同的内容
我需要帮助来比较两个文件。我能够打印出两者之间的区别,但我无法弄清楚当它们错误时如何打印两者之间的相同之处。任何人都可以帮助我吗?提前致谢!
c# - 奇怪的行为默认字符串与下划线比较
通常,如果字符 A 小于字符 B,那么我希望在字符串比较中:
事实上,在字典中,您可以在 BA 词之前找到 AB 词。
不知何故,这不是下划线的情况
小程序;使用复制粘贴检查
输出是:
最后一个值返回 +1
所以:
使用默认字符串比较器时会发生此行为。StringComparer.Ordinal 按预期工作。
这是默认字符串比较器中的错误吗?
angular - Sort a column by given order in Syncfusion Essential JS 2 Grid for Angular 5
Sorting feature is described under the documentation for syncfusion-ej2 Grid (https://ej2.syncfusion.com/angular/documentation/grid/api-column.html#sortcomparer). I have already implemented it in my Angular application. Still, I couldn't find a way to achieve my target as it doesn’t work as I expected (May be I am thinking in a wrong way).
I just need to introduce a default sorting to the grid. The sorting has to be implemented on the column ‘Status’, which can be either “Overdue”, “Planned” or “Completed”. The sort order should follow the same sequence as I have mentioned. Can I achieve it using ‘sortComparer’ like this? If so, what are the changes that I have to perform on the existing solution, which I have quoted below?
[HTML]
[TS]