GEE必须会教程—跳舞的线(字符串类型)

字符串,GEE上跳舞的线!

GEE学习之路漫长,跟着小编一起走进今天的数据类型的学习。字符串是各大编程语言的常用数据类型,我们今天需要了解GEE平台上字符串的定义、以及常用的方法。

1.定义字符串

//字符串构造
var base_str = "Practice makes perfect!";
var str1 = ee.String(base_str);
print("str1:",str1);

定义字符串比较简单,采用ee.String即可定义任意给定的字符串。此处小编定义了一个英文字符串,含义为“熟能生巧”,也希望各位看到文章的同学们不骄不躁,多多练习,自然就熟悉。

2.获取字符串长度

小编想知道这句英文谚语一共多长呢?此时需要用到.length()方法,该方法能够获取指定字符串的长度,最后返回数值结果。

//计算字符串的长度
var len = str1.length();
print("length:",len);

最后的答案是23。

3.字符串拼接

和实践有关的谚语有很多,比如实践出真知,小编想把它和前面的这句合在一起,应该如何实现呢?

//拼接字符串
var str2 = ee.String("Practice brings true knowledge");
var str3 = str1.cat(" ").cat(str2);//注意两句中间加空格
print("str3:",str3);

拼接字符串需要用到cat方法,此处小编重新定义了一个字符串用以表示实践出真知,接着按顺序调用cat方法,注意哦,两句话中间要有个空格号,小编贴心地在两者中间用cat(” “)进行添加。以使得最后的结果符合实际要求。

4.字符串替换

小编觉得实践出真知没错,但实践需要日复一日的勤奋坚持,小编想说勤奋出真知,能不能在不改动其他字符的情况下,单独将实践替换成勤奋呢?

//替换字符串,想把实践出真知改成勤奋出真知,Practice→Diligence
var str4 = str2.replace("Practice","Diligence");
print("str4:",str4);

字符串替换要用的方法是replace方法,该方法有两个参数,第一个参数为要替换的原字符串,第二个字符串为替换后的字符串,一步到位,得出答案。

5.字母大小写转换

两句话都出现了大小写,有大有小的,能不能把字符串全部转化成大写的,或者是全部是小写,这样看着小编更舒服呀

//字母变大小写
var str5 = str1.toUpperCase();//全部大写
var str6 = str1.toLowerCase();//全部小写
print("str5:",str5);
print("str6:",str6);

字符串的大小写转换也是常用的工具之一,这里我们要介绍一字符串里封装的一对双胞胎方法,大哥叫toUpperCase,它的功能是将字符串全部转化成大写,“RACTICE MAKES PERFECT”就是它的杰作,弟弟叫toLowerCase,它的功能是将字符串全部转化成小写,看,最后的结果变成了“practice makes perfect!”

6.获取子字符串

一句话好长啊,好费劲,小编想从里面按顺序挑出几个字母供读者们欣赏,要怎么实现呢?

//获取子字符串
var str7 = str2.slice(1,6);//得到索引号从1到6的字符串,注意字符串的索引号从0开始
print("str7:",str7);

有时我们需要从一句完整的代码语言中提取出某些关键词,以便后续操作,这里就要用到slice方法了,slice俗称切片,它可以根据指定的索引号,按照索引号顺序提取出子字符串。此处小编给定的索引号范围是1到6,结果将提取索引号为1~6的的子字符串即“racti”。

7.分割字符串

这句话由哪些单词组成呢?能不能将字符串按照一个完整的词进行分割?

//分割字符串
var str8 = str2.split(" ");
print("str8:",str8);

分割字符串用split方法,此处小编通过指定分割的断点符为空号,这样一句完整的话变成了若干个单词,形成一个单独的列表进行输出:

8.获取索引号

为了得出特定子字符串的索引号,以便提取出小编想要的子字符串,小编应该做什么?

//获取指定子字符串在原始字符串中的起始位置索引号
var index1 = str1.index("makes");
print("index1:",index1);
var index2 = str1.index("brings");
print("index2:",index2);
//指定子字符串在字符串中最后一次出现的索引位置
var index3 = str2.rindex("e");
print("index3:",index3);

这里要介绍另一对双胞胎了。index和rindex。

index里参数是需要查找索引号的字符串,它会返回子字符串在原始字符串中的起始位置,index1指定查找makes的开头索引号,结果为字母m对应的索引号,若源字符串并未出现指定字符串,则结果返回-1,如index2最后的结果返回值为-1。

rindex比较神奇,返回指定子字符串在字符串中最后一次出现的索引位置。rindex()方法与index()方法类似,但是它从字符串的末尾开始搜索。此时小编想查找“practice makes perfect”中e字母最后一次出现的位置,结果返回29,表示为末尾fect中的e。

9.在字符串中查找与指定正则表达式匹配的内容

除了slice,是否有别的方法能够获取指定字符串?

var str9 = "Practice makes perfect,Practice brings true knowledge!";
var pattern1 = /makes/;
var pattern2 = /Practice/g;//获取字符串中所有出现的指定子字符串
var result1 = str9.match(pattern1);
var result2 = str9.match(pattern2);
print("Result1:",result1);
print("Result2:",result2);

这里就不得不提到match方法了,GEE字符串中的match方法用于在字符串中查找与指定正则表达式匹配的内容。

在上面的例子中,小编重新定义了一个字符串str9,然后使用正则表达式/makes作为参数调用了match方法。match方法会返回一个数组,其中包含了与正则表达式匹配的内容。如果没有找到匹配的内容,则返回null。

在这个例子中,result的值将会是一个数组["makes"],因为字符串中的"makes"与正则表达式匹配。如果我们想要查找字符串中所有匹配的内容,可以在正则表达式中使用全局标志"g",如本例子小编想查找语句中重复出现的practice。

最后的结果如下:

关于常用的GEE的字符串的表达到这里就结束了,希望对大家学习GEE或者是JavaScript有帮助,不要忘记动动小指头,帮忙点个赞哟!

更多内容,欢迎关注小编的公众号“梧桐凉月”,谢谢!咱们下期再会。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/691356.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

「Java同步原理与底层实现解析」

原理概要: java虚拟机中的同步基于进入与结束Monitor对象实现,无论是显式同步(同步代码块进入在jvm是根据monitorenter标志、结束是monitorexit标志,那最后一个是monitorexit是异常结束时被执行的释放指令)、隐式同步…

STM32 输入捕获模式测频率

单片机学习! 目录 文章目录 前言 一、输入捕获测频率配置步骤 二、代码示例及注意事项 2.1 RCC开启时钟 2.2 GPIO初始化 2.3 配置时基单元 2.4 配置输入捕获单元 2.5 选择从模式的触发源 2.6 配置从模式为Reset 2.7 开启定时器 总结 前言 博文介绍如何配置输入捕获电…

OpenAI 全新发布文生视频模型 Sora,支持 60s 超长长度,有哪些突破?将带来哪些影响?

Sora大模型简介 OpenAI 的官方解释了在视频数据基础上进行大规模训练生成模型的方法。 我们下面会摘取其中的关键部分罗列让大家快速get重点。 喜欢钻研的伙伴可以到官网查看技术报告: https://openai.com/research/video-generation-models-as-world-simulator…

AI破局俱乐部,你要了解的都在这里

您好,我是码农飞哥(wei158556),感谢您阅读本文,欢迎一键三连哦。💪🏻 1. Python基础专栏,基础知识一网打尽,9.9元买不了吃亏,买不了上当。 Python从入门到精通…

【C#】使用代码实现龙年春晚扑克牌魔术(守岁共此时),代码实现篇

欢迎来到《小5讲堂》 大家好,我是全栈小5。 这是《C#》系列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识点的理解和掌握。…

大模型量化技术原理-LLM.int8()、GPTQ

近年来,随着Transformer、MOE架构的提出,使得深度学习模型轻松突破上万亿规模参数,从而导致模型变得越来越大,因此,我们需要一些大模型压缩技术来降低模型部署的成本,并提升模型的推理性能。 模型压缩主要分…

不知如何获取1688工厂档案信息,你还在为此烦恼吗?

阿里巴巴集团旗下的B2B电子商务网站,提供海量优质商品,为采购商和供应商提供交流、合作、采购等服务,是很多没有货源优势的电商卖家首选的货源途径,也是国内最大、货源种类最齐全的货源网站。 不少做跨境电商无货源的朋友都想要1…

用html编写的招聘简历

用html编写的招聘简历 相关代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</tit…

自定义异常处理演示

​ 为了防止黑客从前台异常信息&#xff0c;对系统进行攻击。同时&#xff0c;为了提高用户体验&#xff0c;我们都会都抛出的异常进行拦截处理。 一、全局异常处理 编写一个异常拦截类&#xff0c;如下&#xff1a;ControllerAdvice&#xff0c;很多初学者可能都没有听说过…

《最新出炉》系列初窥篇-Python+Playwright自动化测试-19-处理鼠标拖拽-中篇

1.简介 上一篇中&#xff0c;主要是介绍了拖拽的各种方法的理论知识以及实践&#xff0c;今天宏哥讲解和分享一下划取字段操作。例如&#xff1a;需要在一堆log字符中随机划取一段文字&#xff0c;然后右键选择摘取功能。 2.划取字段操作 划取字段操作就是在一段文字中随机选…

Linux系统——http协议介绍

目录 引言——Internet起源 一、http协议——超文本传输协议 1.http相关概念 2.访问浏览器的过程 3.http协议通信过程 4.http相关技术 4.1WEB开发语言 4.2html 4.3CSS 4.4JS 5.MIME——Multipurpose Internet Mail Extensions 多用途互联网邮件扩展 6.URI URN URL的…

【Redis,Java】Redis的两种序列化方式—nosql数据库

redis和mysql的区别&#xff1a; redis是属于nosql的数据库&#xff0c;而mysql是属于sql数据库&#xff0c;redis是属于nosql数据库。mysql是存储在磁盘中的&#xff0c;redis是存储在内存中的&#xff0c;所以redis的读取书读快。这里所说的redis代表nosql&#xff0c;而mysq…

【wails】(1):使用go做桌面应用开发,wails框架入门学习,在Linux上搭建环境,运行demo项目,并打包测试

1&#xff0c;视频地址 https://www.bilibili.com/video/BV1fK421b7QC/ 【wails】&#xff08;1&#xff09;&#xff1a;使用go做桌面应用开发&#xff0c;wails框架入门学习&#xff0c;在Linux上搭建环境&#xff0c;运行demo项目&#xff0c;并打包测试 2&#xff0c;参考…

在Ubuntu中使用python

目录 一、利用vim使用python 1、下载vim 2、使用vim创建python文件 3、编辑完成后的vim操作 4、如何运行 5、vim常见操作 二、安装Jupyter 1、更新系统 2、安装pip 注&#xff1a;pip无法应用的原因及解决方案 3、安装Jupyter 4、打开Jupyter 三、安装其他Python模…

ActiveMQ高可用架构涉及常用功能整理

ActiveMQ高可用架构涉及常用功能整理 1. activemq的集群模式2. 镜像模式高可用系统架构和相关组件2.1 架构说明2.2 相关概念说明2.3 消息模型2.3.1 点对点2.3.2 发布订阅 3. activemq常用命令4. activemq配置集群5. 疑问和思考5.1 activemq的数据删除策略是怎样的&#xff1f;5…

【软考问题】-- 1 - IT知识 - 信息化发展

一、基础问题 问题1:信息系统的生命周期可以简化为哪5个阶段? (1)系统规划(可行性分析与项目开发计划)(2)系统分析(需求分析) (3)系统设计(概要设计、 详细设计) (4)系统实施(编码、 测试) (5)系统运行和维护问题2:国家信息化体系六要素分别是什么? 1信息…

ChatGPT-用ChatGPT指令,自学任何领域的系统知识

1. 指令位置 Github仓库&#xff1a;Mr Ranedeer AI Tutor 但是需要开通chatgtp plus版本&#xff0c;并且打开代码解释器 2 使用 学习内容 开始学习 GPT甚至可以给你思考题&#xff0c;给出的答案还能进行评价 配置 通过配置表修改 深度 学习风格 沟通风格 语气风格 …

基于RWKV架构推理成本大降:Eagle 7B模型的十倍效能提升

前言 在今天这个数据驱动的时代&#xff0c;大型语言模型&#xff08;LLM&#xff09;在处理自然语言处理&#xff08;NLP&#xff09;任务时的效能和效率成为了众多研究者和工程师关注的焦点。尤其是在推理成本日益攀升的背景下&#xff0c;如何在保持甚至提升模型性能的同时…

【Java】数据类型与变量

1.数据类型 在Java中数据类型主要分为两类&#xff1a;基本数据类型和引用数据类型。 基本数据类型有四类八种&#xff1a; 四类&#xff1a;整型、浮点型、字符型以及布尔型八种&#xff1a; 注意&#xff1a;不论是在16位系统还是32位系统&#xff0c;int都占用4个字节&am…

js设计模式:原型模式

作用: 使用js特有的原型链机制,可以通过Object.create方法创建新对象,将一个对象作为另外一个对象的原型 也可以通过修改原型链上的属性,影响新对象的行为 可以更方便的创建一些对象 示例: let obj {getName: function(){return this.name},getAge:function(){return this…