zoukankan      html  css  js  c++  java
  • Scala字符串操作

    package com.bigdata
    
    object StringO {
      def main(args: Array[String]): Unit = {
        val s1 = "Hello"
        val s2 = "World"
    
        //拼接、合并字符串
        println(s1 + " " + s2)
        println(s1.concat(" "+s2))
    
        //访问、截取字符串
        println(s1(0))
        val s3 = s1.substring(0,2)
        println(s3)
    
        //分隔字符串
        val s4 = s1.split("ll")
        println(s4)
    
        //字符串格式化
        val name = "xiaoming"
        val age = 20
        val s5 = "%s is %d years old".format(name,age)
        println(s5)
    
        //处理字符串中的字符(map,filter,flatmap,for,foreach)
        val upper = s1.map(upper=>upper.toUpper)
        val upper1 = s1.map(i=>i.toUpper)
        val upper2 = s1.map(_.toUpper)
        println(upper,upper1,upper2)
    
        val filter = s1.filter(i=>i !='o')
        println(filter)
    
        s1.foreach(println)
    
        for (i <- s1 if i != 'l') {
          println("i = "+i)
        }
    
        //字符串中的查找模式
        // 在一个string上调用.r方法可以创建一个Regex对象,之后在查找是否含有一个匹配时就可以用findFirstIn,此方法返回option类型,当需要查找是否完全匹配时可以用findAllIn,此方法返回一个迭代器
        val pattern = "[0-9]+".r
        val address = "101 main street 123"
        val match1 = pattern.findFirstIn(address)
        val match2 = pattern.findAllIn(address)
        println(match1,match2)
    
        //字符串中的替换模式(replaceAll replaceAllIn replaceFirst replaceFirstIn)
        val address1 = address.replaceAll("[0-9]","x")
        println(address1)
    
        //抽取String中模式匹配的部分
        val pattern1 = "([0-9]+) ([A-Za-z]+)".r
        val pattern1(count,fruit) = "100 bananas"
        println(count,fruit)
    
      }
    
    }
  • 相关阅读:
    gradle
    1-NIO使用
    处理非正常终止的错误
    一个取消多生产者单消费者的日志线程池服务
    executes()源码
    死锁
    CyclicBarrier使用
    Semaphore
    Spring学习(4)IOC容器配置bean:定义与实例化
    在Maven上Web项目添加Spring框架
  • 原文地址:https://www.cnblogs.com/shimingjie/p/10374514.html
Copyright © 2011-2022 走看看