Chr*_*isF -3 c# string comparison replace
我正在比较两个标题列表以获得第三个列表。在这种情况下,第一个列表是艺术家的所有专辑的列表,第二个列表是库中所述艺术家的专辑的列表,第三个列表是库中缺少的专辑。
我的代码运行良好,可以处理丢失的标点符号和重音字符,但当涉及到可以是“<word 1> 和 <word 2>”或“<word 1> & <word 2>”的标题时,它会失败甚至“<单词 1> + <单词 2>”。
最简单的解决方案是对所有标题执行类似的操作:
title = title.Replace(" + ", " and ").Replace(" & ", " and ");
Run Code Online (Sandbox Code Playgroud)
以便它们都具有相同的形式。注意:我正在检查由空格包围的符号,希望确保我得到符号表示“和”的情况。
然而,这并不让我觉得非常有效,尤其是对于一长串标题。
是否有更有效的方法来进行文本替换,或者更好的是,有一种比较原始字符串以获得有效匹配的方法?
我下面的答案更好。使用字符类来解释空格“ [+&] ”。
您可以使用正则表达式:
var title = Regex.Replace(title, "(\\+|&)", "and")
Run Code Online (Sandbox Code Playgroud)
在这里查看它的实际效果: https: //dotnetfiddle.net/9HY1pH
| 归档时间: |
|
| 查看次数: |
144 次 |
| 最近记录: |