string字符串操作
string字符串操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 | using System; using System.Linq; using UnityEngine; public class Guse : MonoBehaviour { void Start() { string str = "ASc_b1 6U2ja" ; string [] vari = str.Split( '_' ); //根据单个字符切割 Debug.Log(vari[0]); //输出:ASc Debug.Log(vari[1]); //输出:b1 6U2ja string [] vari = str.Split( new string [] { "Sc" , "U2" }, StringSplitOptions.None); //根据字符串切割 Debug.Log(vari[0]); //输出:A Debug.Log(vari[1]); //输出:_b1 6 Debug.Log(vari[2]); //输出:ja string vari = str.Substring(3); //删掉前面3个字符 Debug.Log(vari); //输出:_b1 6U2ja string vari = str.Substring(3, 6); //删掉前面3个字符,留下6个字符,删除剩余字符 Debug.Log(vari); //输出:_b1 6U string vari = str.Remove(5); //留下前面5个字符 Debug.Log(vari); //输出:ASc_b string vari = str.Remove(5, 4); //留下前面5个字符,删掉4个字符,留下剩余字符 Debug.Log(vari); //输出:ASc_b2ja string vari = str.Replace( 'S' , 'G' ); //'S'换成'G',有几个换几个 Debug.Log(vari); //输出:AGc_b1 6U2ja string vari = str.Replace( "Sc" , "GdeR" ); //"Sc"换成"GdeR",有几个换几个 Debug.Log(vari); //输出:AGdeR_b1 6U2ja int vari = str.IndexOf( 'S' ); //从前往后找到第1个'S'的索引值 Debug.Log(vari); //输出:1 int vari = str.IndexOf( 'U' , 3); //从索引值3开始,从前往后找到第1个'U'的索引值,索引值3前面的不算 Debug.Log(vari); //输出:8 int vari = str.IndexOf( "Sc_" ); //从前往后找到第1个"Sc_"的索引值 Debug.Log(vari); //输出:1 int vari = str.IndexOf( "U2" , 3); //从索引值3开始,从前往后找到第1个"U2"的索引值,索引值3前面的不算 Debug.Log(vari); //输出:8 int vari = str.LastIndexOf( 'S' ); //从后往前找到第1个'S'的索引值 Debug.Log(vari); //输出:1 int vari = str.LastIndexOf( '6' , 10); //从索引值10开始,从后往前找到第1个'6'的索引值,索引值10后面的不算 Debug.Log(vari); //输出:7 int vari = str.LastIndexOf( "Sc_" ); //从后往前找到第1个"Sc_"的索引值 Debug.Log(vari); //输出:1 int vari = str.LastIndexOf( "6U" , 10); //从索引值10开始,从后往前找到第1个"6U"的索引值,索引值10后面的不算 Debug.Log(vari); //输出:7 int vari = str.Length; //str的长度 Debug.Log(vari); //输出:12 bool vari = str.Contains( 'S' ); //判断是否含有'S' Debug.Log(vari); //输出:True bool vari = str.Contains( "Sv" ); //判断是否含有"Sv" Debug.Log(vari); //输出:False string vari = str.ToLower(); //将字符串转换为小写 Debug.Log(vari); //输出:asc_b1 6u2ja string vari = str.ToUpper(); //将字符串转换为大写 Debug.Log(vari); //输出:ASC_B1 6U2JA bool vari = str.StartsWith( "Ac" ); //判断是否以"Ac"开始 Debug.Log(vari); //输出:False bool vari = str.EndsWith( "ja" ); //判断是否以"ja"结束 Debug.Log(vari); //输出:False char [] vari = str.ToCharArray(); //将字符串转化为字符数组 Debug.Log(vari[2]); //输出:c } } |
删除重复标点符号
1 2 3 | string aa = "你是、、YY、,,..///谁呀呀呀" ; string bb= System.Text.RegularExpressions.Regex.Replace(aa, @"([^\w\s])(\1)+" , "$1" ); Debug.Log(bb); //输出:你是、YY、,./谁呀呀呀 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了