鸿蒙开发:ArkTs字符串string

前言 本文代码案例基于Api13。 字符串在实际的开发中还是非常重要的,牵扯到的用法也是比较多的,比如字符串中的查找,替换,切割等等。 字符串(String)是由零个或多个字符组成的有限序列,在计算机编程和数据处理中广泛使用。字符串可以包含字母、数字、标点符号、空格,甚至可以是空字符串(即不包含任何字符的字符串)。字符串是文本信息的基本表示形式,在几乎所有编程语言中都有专门的字符串数据类型或类来处理它们。 表示方法 在实际的开发中,大家可以使用单引号(')或双引号(")来表示,这两种方式都是可以的,如下代码所示: let string = "我是双引号字符串" let string2 = '我是单引号字符串' 如果是成员变量声明,关键字前缀可以不用: string = "我是双引号字符串" string2 = '我是单引号字符串' 主要方法 方法/属性 概述 length 返回字符串的长度 indexOf() 返回某个指定的字符串值在字符串中首次出现的位置。 lastIndexOf() 从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。 charAt() 返回在指定位置的字符。 split() 把字符串分割为子字符串数组。 substring() 提取字符串中两个指定的索引号之间的字符。 replace() 替换与正则表达式匹配的子串 search() 检索与正则表达式相匹配的值 各方法介绍 1、获取长度 通过内置的length属性,返回字符串的长度,具体使用如下: let string = "我是双引号字符串" let length = string.length console.log("字符串长度:" + length) //打印内容为:字符串长度:8 2、获取位置 通过indexOf(),返回某个指定的字符串值在字符串中首次出现的位置,一定要记住是首次,也就是第一次出现的位置。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" let index = string.indexOf("一") //获取“一”第一次出现的位置 console.log("获取文字一第一次位置:" + index) //打印内容为:获取文字一第一次位置:3 3、是否存在某个字符 给定一个字符串,判断这个字符串中是否存在(包含)某一个字符或者字符串,也是通过indexOf方法来判断,存在不为-1,不存在则为-1。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" if (string.indexOf("鸿蒙") != -1) { console.log("===存在") } else { console.log("===不存在") } 4、从后获取位置 indexOf()方法,是从前进行搜索,lastIndexOf(),则是从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" let index = string.lastIndexOf("一") //获取“一”的最后一次位置 console.log("获取文字一最后一次位置:" + index) //打印内容为:获取文字一最后一次位置:13 5、返回指定位置字符 通过charAt(),返回在指定位置的字符。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" let char = string.charAt(3) //获取指定索引下的文字内容 console.log("获取文字内容:" + char) //打印内容为:获取文字内容:一 6、字符串分割 通过split(),把字符串分割为子字符串数组。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" let sArray = string.split("一") console.log("分割后数组:", sArray) //打印内容为:分割后数组: 程序员,鸣是鸿蒙开发者中的,名佼佼者 除了上面的常见分割之外,也可以通过第二个参数控制返回的数组长度。 let string = "程序员一鸣 是 鸿蒙开发者 中的 一名 佼佼者" let sArray = string.split(" ", 3) //限制返回三个 console.log("分割后数组:", sArray) //打印内容为:分割后数组: 程序员一鸣,是,鸿蒙开发者 7、提取字符 通过substring(),提取字符串中两个指定的索引号之间的字符。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" let eString = string.substring(0, 6) console.log("提取之后的字符:", eString) //打印内容为:提取之后的字符: 程序员一鸣是 如果只有一个参数,那么就是从设置的索引起,到字符串结束位置。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" let eString = string.substring(3) console.log("提取之后的字符:", eString) //打印内容为:提取之后的字符: 一鸣是鸿蒙开发者中的一名佼佼者 8、替换字符 通过replace(),替换与正则表达式匹配的子串。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" let rString = string.replace("程序员一鸣","AbnerMing") console.log("替换之后的字符:", rString) //打印内容为:替换之后的字符: AbnerMing是鸿蒙开发者中的一名佼佼者 当然了, 你也可以通过正则来进行替换,比如把一段字符串中的所有数字替换为“好”字。 let re = /\d+/g; let string = "程序员一鸣6是7鸿蒙开发者8中的一名9佼佼者10" let rString = string.replace(re,"好") console.log("替换之后的字符:", rString) //打印内容为:替换之后的字符: 程序员一鸣好是好鸿蒙开发者好中的一名好佼佼者好 9、检索字符 判断一个字符串是否存在,可以使用indexOf方法进行判断,在上面的第三个方法介绍中已经阐述,除了indexOf方法之外,系统也提供了search()方法用于检索,不为-1则存在,为-1则不存在。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" let isSearch = string.search("一鸣") != -1 console.log("检索字符是否存在:", isSearch) //打印内容为:检索字符是否存在: true 10、小写转大写 通过toUpperCase()方法,把字符串转换为小写。 let string = "abnerming" let upperCase = string.toUpperCase() console.log("转换后字符:", upperCase) //打印内容为:转换后字符: ABNERMING 11、大写转小写 通过toLowerCase()方法,把字符串转换为小写。 let string = "ABNERMING" let lowerCase = string.toLowerCase() console.log("转换后字符:", lowerCase) //打印内容为:转换后字符: abnerming 12、返回指定位置Unicode 编码 通过charCodeAt(),返回在指定的位置的字符的 Unicode 编码。 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者" let char = string.charCodeAt(3) //获取指定索引下的Unicode 编码 console.log("获取Unicode编码内容:" + char) //打印内容为:获取Unicode编码内容:19968 小结 字符串类型是开发中非常重要的一个数据类型,除了上述的方法概述之外,还有String对象,正则等其他的用处,我们放到以后得篇章中讲述。

Mar 22, 2025 - 04:07
 0
鸿蒙开发:ArkTs字符串string

前言

本文代码案例基于Api13。

字符串在实际的开发中还是非常重要的,牵扯到的用法也是比较多的,比如字符串中的查找,替换,切割等等。

字符串(String)是由零个或多个字符组成的有限序列,在计算机编程和数据处理中广泛使用。字符串可以包含字母、数字、标点符号、空格,甚至可以是空字符串(即不包含任何字符的字符串)。字符串是文本信息的基本表示形式,在几乎所有编程语言中都有专门的字符串数据类型或类来处理它们。

表示方法

在实际的开发中,大家可以使用单引号(')或双引号(")来表示,这两种方式都是可以的,如下代码所示:

let string = "我是双引号字符串"
let string2 = '我是单引号字符串'

如果是成员变量声明,关键字前缀可以不用:

string = "我是双引号字符串"
string2 = '我是单引号字符串'

主要方法

方法/属性 概述
length 返回字符串的长度
indexOf() 返回某个指定的字符串值在字符串中首次出现的位置。
lastIndexOf() 从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。
charAt() 返回在指定位置的字符。
split() 把字符串分割为子字符串数组。
substring() 提取字符串中两个指定的索引号之间的字符。
replace() 替换与正则表达式匹配的子串
search() 检索与正则表达式相匹配的值

各方法介绍

1、获取长度

通过内置的length属性,返回字符串的长度,具体使用如下:

let string = "我是双引号字符串"
let length = string.length
console.log("字符串长度:" + length)

//打印内容为:字符串长度:8

2、获取位置

通过indexOf(),返回某个指定的字符串值在字符串中首次出现的位置,一定要记住是首次,也就是第一次出现的位置。

let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
let index = string.indexOf("一") //获取“一”第一次出现的位置
console.log("获取文字一第一次位置:" + index)

//打印内容为:获取文字一第一次位置:3

3、是否存在某个字符

给定一个字符串,判断这个字符串中是否存在(包含)某一个字符或者字符串,也是通过indexOf方法来判断,存在不为-1,不存在则为-1。

 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
if (string.indexOf("鸿蒙") != -1) {
    console.log("===存在")
} else {
    console.log("===不存在")
}

4、从后获取位置

indexOf()方法,是从前进行搜索,lastIndexOf(),则是从后向前搜索字符串,并从起始位置(0)开始计算返回字符串最后出现的位置。

let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
let index = string.lastIndexOf("一") //获取“一”的最后一次位置
console.log("获取文字一最后一次位置:" + index)

//打印内容为:获取文字一最后一次位置:13

5、返回指定位置字符

通过charAt(),返回在指定位置的字符。

 let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
 let char = string.charAt(3) //获取指定索引下的文字内容
 console.log("获取文字内容:" + char)

//打印内容为:获取文字内容:一

6、字符串分割

通过split(),把字符串分割为子字符串数组。

let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
let sArray = string.split("一")
console.log("分割后数组:", sArray)

//打印内容为:分割后数组: 程序员,鸣是鸿蒙开发者中的,名佼佼者

除了上面的常见分割之外,也可以通过第二个参数控制返回的数组长度。

let string = "程序员一鸣 是 鸿蒙开发者 中的 一名 佼佼者"
let sArray = string.split(" ", 3) //限制返回三个
console.log("分割后数组:", sArray)

//打印内容为:分割后数组: 程序员一鸣,是,鸿蒙开发者

7、提取字符

通过substring(),提取字符串中两个指定的索引号之间的字符。

let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
let eString = string.substring(0, 6)
console.log("提取之后的字符:", eString)

//打印内容为:提取之后的字符: 程序员一鸣是

如果只有一个参数,那么就是从设置的索引起,到字符串结束位置。

let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
let eString = string.substring(3)
console.log("提取之后的字符:", eString)

//打印内容为:提取之后的字符: 一鸣是鸿蒙开发者中的一名佼佼者

8、替换字符

通过replace(),替换与正则表达式匹配的子串。

let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
let rString = string.replace("程序员一鸣","AbnerMing")
console.log("替换之后的字符:", rString)

//打印内容为:替换之后的字符: AbnerMing是鸿蒙开发者中的一名佼佼者

当然了, 你也可以通过正则来进行替换,比如把一段字符串中的所有数字替换为“好”字。

let re = /\d+/g;
let string = "程序员一鸣6是7鸿蒙开发者8中的一名9佼佼者10"
let rString = string.replace(re,"好")
console.log("替换之后的字符:", rString)

//打印内容为:替换之后的字符: 程序员一鸣好是好鸿蒙开发者好中的一名好佼佼者好

9、检索字符

判断一个字符串是否存在,可以使用indexOf方法进行判断,在上面的第三个方法介绍中已经阐述,除了indexOf方法之外,系统也提供了search()方法用于检索,不为-1则存在,为-1则不存在。

let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
let isSearch = string.search("一鸣") != -1
console.log("检索字符是否存在:", isSearch)

//打印内容为:检索字符是否存在: true

10、小写转大写

通过toUpperCase()方法,把字符串转换为小写。

let string = "abnerming"
let upperCase = string.toUpperCase()
console.log("转换后字符:", upperCase)

//打印内容为:转换后字符: ABNERMING

11、大写转小写

通过toLowerCase()方法,把字符串转换为小写。

let string = "ABNERMING"
let lowerCase = string.toLowerCase()
console.log("转换后字符:", lowerCase)

//打印内容为:转换后字符: abnerming

12、返回指定位置Unicode 编码

通过charCodeAt(),返回在指定的位置的字符的 Unicode 编码。

let string = "程序员一鸣是鸿蒙开发者中的一名佼佼者"
let char = string.charCodeAt(3) //获取指定索引下的Unicode 编码
 console.log("获取Unicode编码内容:" + char)

//打印内容为:获取Unicode编码内容:19968

小结

字符串类型是开发中非常重要的一个数据类型,除了上述的方法概述之外,还有String对象,正则等其他的用处,我们放到以后得篇章中讲述。