代码之家  ›  专栏  ›  技术社区  ›  whatsinthename

spark scala定制细绳

  •  -1
  • whatsinthename  · 技术社区  · 6 年前

    "debug#compile" "Debug#Compile" 哪里 'D' 'C'

    我的逻辑是:
    1) 我必须根据分隔符来分割字符串。会很特别的人物。所以呢,我每次都要检查。
    2) 之后,我会将每个单词的第一个字母转换成大写,然后使用map我会再次加入它。

    我正在尽我最大的努力,但无法为此设计代码。有人能帮我吗。甚至 会有帮助的!

    object WordCase {
      def main(args: Array[String]) {
        val s="siddhesh#kalgaonkar"
        var b=""
        val delimeters= Array("#","_")
    
    
          if(delimeters(0)=="#")
          {
             b=s.split(delimeters(0).toString).map(_.capitalize).mkString(delimeters(0).toString())
          }
          else if(delimeters(0)=="_")
          {
            b=s.split(delimeters(0).toString).map(_.capitalize).mkString(delimeters(0).toString())
          }
          else{
            println("Non-Standard String")
          }
    
    
        println(b)
      }
    }
    

    "#" 它将每个单词的第一个字母大写,但对于第二种情况,即 "_" . 我在循环中犯了什么愚蠢的错误吗?

    0 回复  |  直到 6 年前
        1
  •  1
  •   Nikhil Suthar    6 年前
    scala> val s="siddhesh#kalgaonkar"
    
    scala> val specialChar = (s.split("[a-zA-Z0-9]") filterNot Seq("").contains).mkString
    
    scala> s.replaceAll("[^a-zA-Z]+"," ").split(" ").map(_.capitalize).mkString(",").replaceAll(",",specialChar)
    res41: String = Siddhesh#Kalgaonkar
    

    您可以用这种方式管理多个特殊字符

    scala> val s="siddhesh_kalgaonkar"
    s: String = siddhesh_kalgaonkar
    
    scala> val specialChar = (s.split("[a-zA-Z0-9]") filterNot Seq("").contains).mkString
    specialChar: String = _
    
    scala> s.replaceAll("[^a-zA-Z]+"," ").split(" ").map(_.capitalize).mkString(",").replaceAll(",",specialChar)
    res42: String = Siddhesh_Kalgaonkar
    
        2
  •  0
  •   whatsinthename    6 年前

    object WordCase {
      def main(args: Array[String]) {
        val s = "siddhesh_kalgaonkar"
    
    
        var b = s.replaceAll("[^a-zA-Z]+", " ").split(" ").map(_.capitalize).mkString(" ") //Replacing delimiters with space and capitalizing first letter of each word
        val c=b.indexOf(" ") //Getting index of space
        val d=s.charAt(c).toString // Getting delimiter character from the original string 
        val output=b.replace(" ", d) //Now replacing space with the delimiter character in the modified string i.e 'b'
        println(output)
      }
    }
    
    推荐文章