怎么截取java的字符串,JavaScript substring() 方法,substring这么使用(详细介绍)

简介: 怎么截取java的字符串,JavaScript substring() 方法,substring这么使用(详细介绍)

JavaScript substring() 方法


定义和用法


substring() 方法用于提取字符串中介于两个指定下标之间的字符。


语法

stringObject.substring(start,stop)


参数 描述

start 必需。一个非负的整数,规定要提取的子串的第一个字符在 stringObject 中的位置。

stop

可选。一个非负的整数,比要提取的子串的最后一个字符在 stringObject 中的位置多 1。


如果省略该参数,那么返回的子串会一直到字符串的结尾。


返回值

一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。


说明


substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符。


如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。


提示和注释

重要事项:与 slice() 和 substr() 方法不同的是,substring() 不接受负的参数。


例子 1

在本例中,我们将使用 substring() 从字符串中提取一些字符:

<script type="text/javascript">
var str="Hello world!"
document.write(str.substring(3))
</script>
lo world!

例子 2

在本例中,我们将使用 substring() 从字符串中提取一些字符:

<script type="text/javascript">
var str="Hello world!"
document.write(str.substring(3,7))
</script>
lo w

substring()的作用就是截取父字符串的某一部分


public String substring(int beginIndex, int endIndex)


第一个参数int为开始的索引,对应String数字中的开始位置,


第二个参数是截止的索引位置,对应String中的结束位置


1、取得的字符串长度为:endIndex - beginIndex;


2、从beginIndex开始取,到endIndex结束,从0开始数,其中不包括endIndex位置的字符


代码示例如下:

package com.example;
public class MyClass {
    public static void main(String[] args){
        String test = "Hello World !";
        String subTest1 = test.substring(0,3);
        System.out.println("subTest:" + subTest1);
        String subTest2 = test.substring(0,test.length());
        System.out.println("subTest:" + subTest2);
    }
}


运行结果如下:

subTest:Hel
subTest:Hello World !


注意:


1)、substring(a,b)中的参数a其值可以从索引值0开始,

当a等于0时,则表示其从字符串的第一个字符开始算起,
   也就是其子字符串是包含第一个字符的,当然,你也可以从后续的其他字符开始;


2)、substring(a,b)中的参数b,其值最大可以为 父字符串的长度,

但并不包含索引值为b的那个字符。
public static void main(String[] args) {
        // 写一下截取   以路径为例   拿到4ecd16f4-e444-4b9d-b845-c97780294d75.tmp 最后这个
        String path = "E:\\360浏览器\\360se6\\User Data\\4ecd16f4-e444-4b9d-b845-c97780294d75.tmp";
        // substring(param1, param2)是截取字符串   param1-开始的位置 param2-结束的位置 
        // path.lastIndexOf("\\")  开始位置: 路径文件最后一个  “\\”    为开始位置
       // path.lastIndexOf("\\")+1  开始位置: 路径文件最后一个  “\\” +1  再像后移动一个字符创的位置  为开始位置
        String fileName = path.substring(path.lastIndexOf("\\") + 1, path.length());// 从\\处开始截取 一直到字符串末尾
        // fileName 就截取出来
        System.out.println(fileName);
        String str = "今天是个好日子";// 我要把日子取出来 
        System.out.println(str.substring(5,7));// substring param1-开始的位置 param2-结束的位置 
        // 这是比较简单的 
        System.out.println(str.length());
        System.out.println(str.indexOf("今"));
        System.out.println(str.indexOf("天"));
        System.out.println(str.indexOf("是"));
        System.out.println(str.indexOf("个"));
        System.out.println(str.indexOf("好"));// 此处开始 一直到最后
        System.out.println(str.indexOf("日"));
        System.out.println(str.indexOf("子"));
    }
}


运行结果:

4ecd16f4-e444-4b9d-b845-c97780294d75.tmp
日子
7
0
1
2
3
4
5
6
相关文章
|
3月前
|
JavaScript 前端开发 程序员
前端原生Js批量修改页面元素属性的2个方法
原生 Js 的 getElementsByClassName 和 querySelectorAll 都能获取批量的页面元素,但是它们之间有些细微的差别,稍不注意,就很容易弄错!
|
3月前
|
SQL Java 索引
java小工具util系列2:字符串工具
java小工具util系列2:字符串工具
171 83
|
3月前
|
监控 JavaScript Java
Node.js中内存泄漏的检测方法
检测内存泄漏需要综合运用多种方法,并结合实际的应用场景和代码特点进行分析。及时发现和解决内存泄漏问题,可以提高应用的稳定性和性能,避免潜在的风险和故障。同时,不断学习和掌握内存管理的知识,也是有效预防内存泄漏的重要途径。
304 62
|
3月前
|
JavaScript 前端开发 数据处理
模板字符串和普通字符串在浏览器和 Node.js 中的性能表现是否一致?
综上所述,模板字符串和普通字符串在浏览器和 Node.js 中的性能表现既有相似之处,也有不同之处。在实际应用中,需要根据具体的场景和性能需求来选择使用哪种字符串处理方式,以达到最佳的性能和开发效率。
124 63
|
1月前
|
JavaScript 前端开发 开发者
JavaScript字符串的常用方法
在JavaScript中,字符串处理是一个非常常见的任务。JavaScript提供了丰富的字符串操作方法,使开发者能够高效地处理和操作字符串。本文将详细介绍JavaScript字符串的常用方法,并提供示例代码以便更好地理解和应用这些方法。
56 13
|
3月前
|
Java 数据库
java小工具util系列1:日期和字符串转换工具
java小工具util系列1:日期和字符串转换工具
76 26
|
3月前
|
存储 缓存 安全
java 中操作字符串都有哪些类,它们之间有什么区别
Java中操作字符串的类主要有String、StringBuilder和StringBuffer。String是不可变的,每次操作都会生成新对象;StringBuilder和StringBuffer都是可变的,但StringBuilder是非线程安全的,而StringBuffer是线程安全的,因此性能略低。
104 8
|
3月前
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
87 5
|
3月前
|
JavaScript 前端开发 索引
JavaScript学习第二章--字符串
本文介绍了JavaScript中的字符串处理,包括普通字符串和模板字符串的使用方法及常见字符串操作方法如`charAt`、`concat`、`endsWith`等,适合前端学习者参考。作者是一位热爱前端技术的大一学生,专注于分享实用的编程技巧。
45 2
|
3月前
|
JavaScript 前端开发
js中的bind,call,apply方法的区别以及用法
JavaScript中,`bind`、`call`和`apply`均可改变函数的`this`指向并传递参数。其中,`bind`返回一个新函数,不立即执行;`call`和`apply`则立即执行,且`apply`的参数以数组形式传递。三者在改变`this`指向及传参上功能相似,但在执行时机和参数传递方式上有所区别。
45 1

热门文章

最新文章

  • 1
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    23
  • 2
    Node.js 中实现多任务下载的并发控制策略
    32
  • 3
    【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
    25
  • 4
    【JavaScript】深入理解 let、var 和 const
    48
  • 5
    【04】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架二次开发准备工作-以及建立初步后端目录菜单列-优雅草卓伊凡商业项目实战
    44
  • 6
    【03】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架搭建-服务端-后台管理-整体搭建-优雅草卓伊凡商业项目实战
    53
  • 7
    【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
    55
  • 8
    如何通过pm2以cluster模式多进程部署next.js(包括docker下的部署)
    71
  • 9
    【01】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-需求改为思维导图-设计数据库-确定基础架构和设计-优雅草卓伊凡商业项目实战
    55
  • 10
    JavaWeb JavaScript ③ JS的流程控制和函数
    62