【问题标题】:Changing substring from our to or将子字符串从我们的更改为或
【发布时间】:2015-06-07 13:14:15
【问题描述】:

我目前正在尝试将“我们邻居国旗的颜色”之类的加拿大句子更改为“我们邻居国旗的颜色” 代码需要删除我们中的 'u' 以将其更改为 or (简单的部分) 但它还必须检查子字符串“our”前面的字符是否为空格,如果是,则将其保留为“our”。

【问题讨论】:

  • “hor”、“dor”、“scor”、“tor”、“for”。 . .你的规则不够健全。您应该保留一本包含您想要的替换的字典并使用它。更不用说“颜色”、“荣誉”等等。

标签: string replace char substring


【解决方案1】:

您将需要比您定义的规则更复杂的东西(“'our' 前面的空格”),或者您将需要使用应该修复的单词列表。考虑一下“道格”这个名字。我不认为他喜欢被称为狗,即使他是美国人......

我想你应该考虑一下需要更改的单词的查找表。

维基百科有一个list of spelling variants between U.S. and U.K. English

如果您将该列表构建到您的代码中,那么您可以使用正则表达式模式对其进行攻击。您可以遍历列表并进行全局搜索/替换(当然要考虑字母大小写),或者您可以简单地使用正则表达式查找其中包含“ou”的任何单词,然后根据某种哈希图检查整个单词如果存在,则拉取替代品。

正则表达式 (\b\w*ou\w*\b) 会找到包含 ou 的单词,然后您可以针对该哈希图进行查找。

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 2016-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-20
    • 1970-01-01
    • 2021-12-12
    • 2021-12-11
    相关资源
    最近更新 更多