首页 > 其他分享 >无涯教程-D语言 - 字符串(Strings)

无涯教程-D语言 - 字符串(Strings)

时间:2023-11-17 19:32:03浏览次数:33  
标签:std 教程 string s1 无涯 greeting1 import Learnfk Strings

字符数组

我们可以用以下两种形式来表示字符数组.第一种形式直接提供大小,第二种形式使用dup方法创建字符串" Good morning"。

char[9]  greeting1="Hello learnfk"; 
char[] greeting2="Good morning".dup; 

这是使用上述简单字符数组形式的简单示例。

import std.stdio;

void main(string[] args) { 
   char[9] greeting1="Hello learnfk"; 
   writefln("%s",greeting1); 

   char[] greeting2="Good morning".dup; 
   writefln("%s",greeting2); 
}

当上面的代码被编译和执行时,它产生的输出如下:

Hello learnfk 
Good morning

字符串

这些字符串可与上面显示的字符数组互操作,以下示例显示了一个简单的字符串表示形式。

string greeting1="Hello learnfk";

字符串示例

import std.stdio;

void main(string[] args) { 
   string greeting1="Hello learnfk"; 
   writefln("%s",greeting1);  
   
   char[] greeting2="Good morning".dup; 
   writefln("%s",greeting2);  
   
   string greeting3=greeting1; 
   writefln("%s",greeting3); 
}

当上面的代码被编译和执行时,它产生的输出如下:

Hello learnfk 
Good morning 
Hello all 

字符串拼接

D编程中的字符串连接使用tilde(~)符号。

import std.stdio;

void main(string[] args) { 
   string greeting1="Good"; 
   char[] greeting2="morning".dup; 
   
   char[] greeting3=greeting1~" "~greeting2; 
   writefln("%s",greeting3); 
   
   string greeting4="morning"; 
   string greeting5=greeting1~" "~greeting4; 
   writefln("%s",greeting5); 
}

当上面的代码被编译和执行时,它产生的输出如下:

Good morning 
Good morning 

Length函数

可以使用length函数来检索以字节为单位的字符串长度。

import std.stdio;  

void main(string[] args) { 
   string greeting1="Good"; 
   writefln("Length of string greeting1 is %d",greeting1.length); 
   
   char[] greeting2="morning".dup;        
   writefln("Length of string greeting2 is %d",greeting2.length); 
}

编译并执行上述代码后,将产生以下输出-

Length of string greeting1 is 4 
Length of string greeting2 is 7

字符串比较

在D编程中,字符串比较非常容易。您可以使用==,<和>运算符进行字符串比较。

import std.stdio; 
 
void main() { 
   string s1="Hello"; 
   string s2="Learnfk";
   string s3="Learnfk";
   
   if (s2 == s3) { 
      writeln("s2: ",s2," and S3: ",s3, "  are the same!"); 
   }
   
   if (s1 < s2) { 
      writeln("'", s1, "' comes before '", s2, "'."); 
   } else { 
      writeln("'", s2, "' comes before '", s1, "'."); 
   }
}

当上面的代码被编译和执行时,它产生的输出如下:

s2: Learnfk and S3: Learnfk are the same! 
'Hello' comes before 'Learnfk'.

字符串替换

我们可以使用string [] replace字符串。

import std.stdio; 
import std.string; 
 
void main() {
   char[] s1="hello Learnfk ".dup; 
   char[] s2="sample".dup;
   
   s1[6..12]=s2[0..6]; 
   writeln(s1);
}

当上面的代码被编译和执行时,它产生的输出如下:

hello sample

索引方法

在下面的示例中说明了在字符串中包括indexOf和lastIndexOf的子字符串的位置的索引方法。

import std.stdio;
import std.string;

void main() { 
   char[] s1="hello Learnfk ".dup; 
    
   writeln("indexOf of llo in hello is ",std.string.indexOf(s1,"llo")); 
   writeln(s1); 
   writeln("lastIndexOf of O in hello is " ,std.string.lastIndexOf(s1,"O",CaseSensitive.no));
}

编译并执行上述代码后,将产生以下输出-

indexOf.of llo in hello is 2 
hello Learnfk  
lastIndexOf of O in hello is 7

字符处理

以下示例显示了用于更改字符示例的方法。

import std.stdio;
import std.string;

void main() { 
   char[] s1="hello Learnfk ".dup; 
   writeln("Capitalized string of s1 is ",capitalize(s1)); 
    
   writeln("Uppercase string of s1 is ",toUpper(s1)); 
    
   writeln("Lowercase string of s1 is ",toLower(s1));   
}

编译并执行上述代码后,将产生以下输出-

Capitalized string of s1 is Hello Learnfk  
Uppercase string of s1 is HELLO LEARNFK  
Lowercase string of s1 is hello Learnfk

限制字符

下示例显示了字符串中的重串字符。

import std.stdio;
import std.string;

void main() { 
   string s="H123Hello1";  
   
   string result=munch(s, "0123456789H"); 
   writeln("Restrict trailing characters:",result);  
   
   result=squeeze(s, "0123456789H"); 
   writeln("Restrict leading characters:",result); 
   
   s="  Hello Learnfk  "; 
   writeln("Stripping leading and trailing whitespace:",strip(s)); 
}

编译并执行上述代码后,将产生以下输出-

Restrict trailing characters:H123H 
Restrict leading characters:ello1 
Stripping leading and trailing whitespace:Hello Learnfk

参考链接

https://www.learnfk.com/d-programming/d-programming-strings.html

标签:std,教程,string,s1,无涯,greeting1,import,Learnfk,Strings
From: https://blog.51cto.com/u_14033984/8452684

相关文章

  • 焕颜AI DeepfaceKit 换脸变声教程
    下载安装1.软件下载地址https://exluyyho90p.feishu.cn/docx/TRBWdOfkIoFMeYxZiDZc7k62nud2.打开软件3.进入软件首页使用须知:软件集成AI实时换脸、克隆声音、背景替换、实时美颜、一键遮罩、视频图片等功能传统的Swapface、Deepface....这类软件对电脑配置要求很高,不然会非常的卡顿......
  • 无涯教程-D语言 - 条件判断
    条件判断结构包含要判断的条件以及要执行的两组语句。如果条件为true,则执行一组语句,如果条件为false,则执行另一组语句。D编程语言将任何非零和非空值假定为true,并且如果其值为零或null,则假定为false值。Sr.No.Statement&描述1ifstatementif语句由布尔表达式和一......
  • 安卓大佬力荐,送你一份超详细的Android学习教程指南
    前言之前,我们也经常听到一种声音“计算机专业已经饱和了,赚不到钱了”,但是现在,这种声音好像越来越少了,大家都没有这种担心了吗?主要是初级岗位已经趋于饱和,但高级岗位又相对缺乏,作为Android开发人员,我们应该思考怎么去往高级人才发展,而不是转学其他语言,我们是要懂得去成为金字塔顶端......
  • 无涯教程-D语言 - 循环语句
    循环语句多次执行一个语句或一组语句,以下是循环语句的一般形式,主要用于编程语言中-D编程语言提供了以下类型的循环来处理循环需求。Sr.No.LoopType&描述1whileloop当给定条件为真时,它将重复一个语句或一组语句。2forloop它多次执行一系列语句,并简化了管理循环变量......
  • 适合小白的 nvm 安装配置教程
    适合小白的nvm安装配置教程目录适合小白的nvm安装配置教程nvm简介一、nvm的安装与配置1、installnvm2、basecommand【主要验证nvm是否安装成功】3、configuretaobaomirror二、node的安装与配置1、installnode2、配置node的prefix(全局路径)和cache(缓存路径)2.1、......
  • 【Python入门教程】Python中类的用法和意义
    ​        在Python中,类是一种重要的面向对象编程概念。它们为我们提供了一种方法,可以将现实世界中的对象抽象为代码中的类,并通过类创建对象的实例。类定义了对象的结构和行为,使我们可以构建复杂的程序和数据模型。一、类的定义        在Python中,类的定义使......
  • 无涯教程-D语言 - 基本语法
    D语言非常简单易学,让我们开始创建第一个D程序!D示例让我们编写一个简单的D程序,所有D文件都将具有扩展名.d。因此,将以下源代码放入test.d文件中。importstd.stdio;/*我在D中的第一个程序*/voidmain(string[]args){writeln("test!");}假设D环境设置正确,让......
  • DevExpress中文教程 - 如何在macOS和Linux (CTP)上创建、修改报表(上)
    DevExpressReporting是.NETFramework下功能完善的报表平台,它附带了易于使用的VisualStudio报表设计器和丰富的报表控件集,包括数据透视表、图表,因此您可以构建无与伦比、信息清晰的报表。DevExpressReports—跨平台报表组件,允许用户在针对任何基于.NET平台的应用程序中生成......
  • 【QT最新2023年安装包下载及安装教程(超详细)】
    1、打开清华大学镜像网站:https://mirrors.tuna.tsinghua.edu.cn/qt/或者打开qt官网下载:http://www.qt.io/download不建议使用官网下载安装包,网速不稳定,下载较慢,此处讲解镜像网站下载步骤  2、下载完成后找到安装包双击打开--进入安装“登录”界面:输入邮箱和密码进行登录,没......
  • 手把手教你yolov5训练自己的数据集(代码+教程)
    在这篇博文中,我们对YOLOv5模型进行微调,用于自定义目标检测的训练和推理。目录引言:YOLOv5是什么?YOLOv5提供的模型YOLOv5提供的功能使用YOLOv5进行自定义目标检测训练自定义训练的方法自定义训练代码准备数据集克隆YOLOv5存储库训练小模型(yolov5s)训练YOLOv5中型模型冻结层训练中型Y......