substring的使用

本文对比了JavaScript与C#中字符串截取方法的差异,JavaScript使用substring方法通过索引范围获取子串,而C#则通过指定起始索引及长度来截取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是一个很简单的使用,代码中如何对字符串进行截取呢?一般我们都使用substring,但是js和C#中的使用有些不同!

js中:

var aa='abcdefghijk';

aa=aa.substring('6','8');

这时候aa='fgh'; 就是从第6个索引截取到第8个索引。 

 

 

C#中

var aa='abcdefghijk';

aa=aa.substring('6','3');

这时候aa='fgh'; 就是从第6个索引截取三个字符。 

 

很简单,但是由于我写代码时总喜欢copy,导致对基础的东西都混淆不清,今天为了这个问题,浪费了我好长时间调试。唉...我的时间

 又白白浪费掉了...以后碰到该一定要记住了。希望,迷惑的人也看到后对你们有帮助哦!

### MySQL 中 `SUBSTRING` 函数的使用方法 #### 基本语法 `SUBSTRING` 是用于从字符串中提取子串的一个重要函数。其基本语法如下: 1. **仅指定起始位置** ```sql SUBSTRING(str, pos) ``` 返回从字符串 `str` 的第 `pos` 个字符开始直到字符串末尾的部分。 2. **指定起始位置和长度** ```sql SUBSTRING(str, pos, len) ``` 返回从字符串 `str` 的第 `pos` 个字符开始,长度为 `len` 的部分[^3]。 3. **支持负数索引** 如果 `pos` 为负数,则表示从字符串末尾向前计数的位置。例如,`-1` 表示最后一个字符,`-2` 表示倒数第二个字符等[^5]。 --- #### 示例代码 以下是几个具体的例子展示如何使用 `SUBSTRING` 函数: ##### 示例 1:从指定位置开始截取字符串 假设有一个表 `my_table`,其中有一列 `name` 存储了完整的姓名数据。我们希望只获取每个人的姓氏(即名字的第一个字)。 ```sql SELECT SUBSTRING(name, 1, 1) AS surname FROM my_table; ``` ##### 示例 2:从中间位置截取固定长度的字符串 如果我们想从字符串的第 3 个字符开始,截取长度为 4 的子串: ```sql SELECT SUBSTRING('abcdefgh', 3, 4); -- 结果: 'cdef' ``` ##### 示例 3:处理负数索引 如果需要从字符串末尾往前计算位置并截取一定长度的内容: ```sql SELECT SUBSTRING('abcdefg', -3, 2); -- 结果: 'ef' (从倒数第三个字符开始,截取两个字符) ``` ##### 示例 4:结合其他函数使用 我们可以将 `SUBSTRING` 和其他字符串函数一起使用,比如 `LOCATE` 来动态定位某个分隔符的位置,并从中提取部分内容。 ```sql SELECT SUBSTRING('email@example.com', LOCATE('@', 'email@example.com') + 1); -- 结果: 'example.com' ``` --- ### Java 中 `substring` 方法的使用 除了数据库中的 `SUBSTRING` 函数,在编程语言如 Java 中也有类似的 `substring` 方法。它的主要用途是从给定字符串中提取一部分作为新的字符串。 #### 基本语法 1. **指定起始索引** ```java string.substring(startIndex); ``` 提取从 `startIndex` 开始到字符串末尾的所有字符。 2. **指定起始和结束索引** ```java string.substring(startIndex, endIndex); ``` 提取从 `startIndex` 到 `endIndex - 1` 范围内的字符[^4]。 #### 示例代码 以下是一些常见的用法实例: ##### 示例 1:简单的字符串截取 ```java String str = "HelloWorld"; System.out.println(str.substring(5)); // 输出: "World" ``` ##### 示例 2:指定范围的字符串截取 ```java String str = "HelloWorld"; System.out.println(str.substring(0, 5)); // 输出: "Hello" ``` ##### 示例 3:删除特定字符 通过组合逻辑判断可以实现更复杂的操作,例如删除字符串中的某一个字符: ```java public static String removeCharacter(String str, char ch) { StringBuilder result = new StringBuilder(); for (int i = 0; i < str.length(); i++) { if (str.charAt(i) != ch) { result.append(str.charAt(i)); } } return result.toString(); } // 测试 String originalStr = "abcabcabc"; String modifiedStr = removeCharacter(originalStr, 'c'); System.out.println(modifiedStr); // 输出: "ababab" ``` --- ### 总结 无论是 MySQL 还是 Java,`substring` 都是一个非常实用的功能工具。它可以帮助开发者轻松完成字符串切片、过滤以及重组的任务。掌握这些基础用法对于日常开发工作至关重要。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值