【问题标题】:How do I take the leading consonants an move them to the end of the string?如何将前导辅音移动到字符串的末尾?
【发布时间】:2020-06-07 00:55:30
【问题描述】:

我正在做的代码是,如果单词以辅音开头,它将所有前导辅音移动到单词的末尾并添加“ay”。例如“带来”到“ingbray”。

【问题讨论】:

  • 本网站不是代码编写服务。我们可以帮助您解决有关您的代码的具体问题,最好附上MCVE。但是,作为一次性的新用户欢迎奖金,鉴于其简单的性质,我已经回答了您的问题。今后,请按照How to ask 显示您在问题中的尝试。

标签: java jcreator


【解决方案1】:

您可以使用正则表达式来匹配前导辅音:

String pigLatin = str.replaceAll("(?i)(^[^aeiou]+)(.*)", "$2$1ay");

分解:

  • (?i) = 忽略大小写
  • [^aeiou] = 任何非元音
  • [^aeiou]+ = 1 个或多个非元音(“贪婪”匹配 - 即尽可能多)
  • (^[^aeiou]+) = 1 个或多个非元音锚定开始,作为组 1 捕获
  • (.*) 任何其他字符,作为第 2 组捕获

以及替换:

  • $2第二组
  • $1第一组
  • ay 文字“ay”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-04
    • 1970-01-01
    • 2018-11-05
    • 2013-08-25
    • 2018-02-25
    • 2017-04-12
    • 1970-01-01
    相关资源
    最近更新 更多