unity 字符串 小技巧

这篇具有很好参考价值的文章主要介绍了unity 字符串 小技巧。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

//去掉字符串 中间 及 前后 的空格
		Debug.Log("你好呀   嗯 好你 看有" + str.Replace(" ",""));
		//打印结果:你好呀嗯好你看有




//分隔符取值:
public string QuZhiA(string str)
	{
		string a= str.Replace(" ","");
		var temps = a.Split('-');
		string str01="";
        for (int i = 0; i < temps.Length; i++)
        {
			str01 = temps[0];
		}
		return str01;
	}

//调用:	Debug.Log("000000000000="+ QuZhiA("0.5-0.55"));
结果:0.5

1. 判断text是否为int 

//判断实数的正则表达式为 ^-?\d+\.?\d*$

//具体方法

//1、添加引用
using System.Text.RegularExpressions;

//2、
string regex = @"^-?\d+\.?\d*$";
bool result = Regex.IsMatch(字符, regex);

//result 结果为 true时,字符实数

2.比较两个字符串是否相等

/// <summary>
	/// 比较两个字符串是否相等
	/// </summary>
	/// <param name="A"></param>
	/// <param name="B"></param>
	/// <returns></returns>
	public static bool StrComparison(string A, string B)
	{
		string variable01 = A.Replace(" ", "");
		string variable02 = B.Replace(" ", "");
		char[] c1 = variable01.ToCharArray();
		char[] c2 = variable02.ToCharArray();
		Array.Sort(c1);
		Array.Sort(c2);
		string t1 = new String(c1).ToUpper();
		string t2 = new String(c2).ToUpper();
		
		if (t1.Trim() == t2.Trim())//去除 首尾空格
		{
			return true;
		}
		else
		{
			return false;
		}
	}

3.unity C#字符串读取

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class MyTextChar : MonoBehaviour
{

    private Text uiText;
    //储存中间值
    private string words;
    //每个字符的显示速度
    private float timer;
    private float timer2;
    //限制条件,是否可以进行文本的输出
    private bool isPrint = false;
    private float perCharSpeed = 1;

    private int text_length = 0;
    private string Ctext;
    // Use this for initialization
    void Start()
    {

        uiText = GetComponent<Text>();
        words = GetComponent<Text>().text;
        isPrint = true;
    }

    // Update is called once per frame
    void Update()
    {

        printText();
    }

    void printText()
    {
        try
        {
            if (isPrint)
            {

                uiText.text = words.Substring(0, (int)(perCharSpeed * timer));//截取

                timer += Time.deltaTime;

            }
        }
        catch (System.Exception)
        {
            printEnd();
        }
    }

    void printEnd()
    {
        isPrint = false;
    }
}

4.字符串 剔除使用

 DLChangDu = int.Parse(DaLouChangDu.text.TrimEnd('m'));//剔除结尾m 使用整数部分

string.TrimStart()   //删除字符串头部空格

string.TrimEnd()  //删除字符串尾部空格

string.Trim()  //删除字符串头部和尾部空格,由外向内,直到碰到非空格才会停止

5.是否包含

 if (!DaLouChangDu.text.Contains("m"))//是否存在m

6.删除指定位置字符

//删除此字符串中从指定位置到最后位置的所有字符。
Remove(int startIndex):


//从此实例中的指定位置开始删除指定数目的字符。
Remove(int startIndex, int length):


//从此实例检索子字符串。子字符串从指定的字符位置开始。
Substring(int startIndex):


//从此实例检索子字符串。子字符串从指定的字符位置开始且具有指定的长度。
Substring(int startIndex, int length):



7.分割字符串:

Split方法,用于分割字符串。

 static void Main()
        {
            string _testStr = "痴#情,的妖:怪啊,请再;等一世吧!";
            char[] _separator = { '#', ',', ':', ';' };
            string[] _splitsStrings = _testStr.Split(_separator);
            for (int i = 0; i < _splitsStrings.Length; i++)
            {
                Console.WriteLine("子字符串{0}:{1}", i, _splitsStrings[i]);
            }
            Console.ReadKey();
        }

8.

截取字符串

SubString方法可以截取字符串中指定索引位置及指定长度的字符。(字符串中的索引是从0开始)

            string _testStr = "痴情的妖怪啊,请再等一世吧!";
            string _subStr = _testStr.Substring(3, 4);    //从索引3开始,截取四个字符
            Console.WriteLine(_subStr);

9.获取时间戳(long) 

using System;
using UnityEngine;

public class TimeTest : MonoBehaviour
{
    DateTime startTime;

    private void Start()
    {
        //获取开始时的时间
        startTime = DateTime.Now;
        Debug.Log("startTime="+ startTime);

        //获取当前时间戳
        long unixTime = ConvertDateTimep(DateTime.Now);
        Debug.Log(unixTime);
        //将时间戳转换为DateTime
        Debug.Log(GetTime(unixTime.ToString()).ToString());

        Debug.Log(GetTime(unixTime.ToString()).Year);
        Debug.Log(GetTime(unixTime.ToString()).Month);
        Debug.Log(GetTime(unixTime.ToString()).Day);
        Debug.Log(GetTime(unixTime.ToString()).Hour);
        Debug.Log(GetTime(unixTime.ToString()).Minute);
        Debug.Log(GetTime(unixTime.ToString()).Second);


    }
    /// <summary>
    /// 获取时间戳(精确到秒)
    /// TimeTool.ConvertDateTimep(DateTime.Now)
    /// </summary>
    /// <param name="time">时间</param>
    public static long ConvertDateTimep(DateTime time)
    {
        return ((time.ToUniversalTime().Ticks - 621355968000000000) / 10000000);
        //等价于:
        //return ((time.ToUniversalTime().Ticks - new DateTime(1970, 1, 1, 0, 0, 0, 0).Ticks) / 10000000) * 1000;
    }
    /// <summary>
    /// 获得时间戳 
    /// </summary>
    /// <returns></returns>
    private long GetTime()
    {
        //精确到毫秒
        return new DateTimeOffset(DateTime.UtcNow).ToUnixTimeSeconds();
    }
    /// <summary>
    /// 时间戳转为C#格式时间
    /// TimeTool.GetTime(TimeTool.ConvertDateTiemp(DateTime.Now).ToString())
    /// </summary>
    /// <param name="timeStamp">时间戳</param>
    /// <returns></returns>
    public static DateTime GetTime(string timeStamp)
    {
        if (timeStamp.Length > 10)
        {
            timeStamp = timeStamp.Substring(0, 10);
        }
        DateTime dateTimeStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
        long lTime = long.Parse(timeStamp + "0000000");
        TimeSpan toNow = new TimeSpan(lTime);
        return dateTimeStart.Add(toNow);
    }


    private void Update()
    {
        if (Input.GetKeyDown(KeyCode.Z))
        {
            //获取当前时间,并打印当前时间与开始时间相差秒数(以秒为单位)
            DateTime curtimer = DateTime.Now;
            Debug.Log(curtimer);
            int timer = GetSubSeconds(startTime, curtimer);
            Debug.Log(timer);
        }
    }

    /// <summary>
    /// 获取间隔秒数
    /// </summary>
    /// <param name="startTimer"></param>
    /// <param name="endTimer"></param>
    /// <returns></returns>
    public int GetSubSeconds(DateTime startTimer, DateTime endTimer)
    {
        TimeSpan startSpan = new TimeSpan(startTimer.Ticks);

        TimeSpan nowSpan = new TimeSpan(endTimer.Ticks);

        TimeSpan subTimer = nowSpan.Subtract(startSpan).Duration();

        //返回间隔秒数(不算差的分钟和小时等,仅返回秒与秒之间的差)
        //return subTimer.Seconds;

        //返回相差时长(算上分、时的差值,返回相差的总秒数)
        return (int)subTimer.TotalSeconds;
    }

    /// <summary>
    /// 获取两个时间的相差多少分钟
    /// </summary>
    /// <param name="startTimer"></param>
    /// <param name="endTimer"></param>
    /// <returns></returns>
    public int GetSubMinutes(DateTime startTimer, DateTime endTimer)
    {
        TimeSpan startSpan = new TimeSpan(startTimer.Ticks);

        TimeSpan nowSpan = new TimeSpan(endTimer.Ticks);

        TimeSpan subTimer = nowSpan.Subtract(startSpan).Duration();

        //返回相差时长(仅返回相差的分钟数)
        //return subTimer.Minutes;
        //返回相差时长(仅返回相差的总分钟数)
        return (int)subTimer.TotalMinutes;
    }


    /// <summary>
    /// 获取两个时间的相差多少小时
    /// </summary>
    /// <param name="startTimer"></param>
    /// <param name="endTimer"></param>
    /// <returns></returns>
    public int GetSubHours(DateTime startTimer, DateTime endTimer)
    {
        TimeSpan startSpan = new TimeSpan(startTimer.Ticks);

        TimeSpan nowSpan = new TimeSpan(endTimer.Ticks);

        TimeSpan subTimer = nowSpan.Subtract(startSpan).Duration();

        //返回相差时长(仅返回相差的小时)
        //return subTimer.Hours;
        //返回相差时长(返回相差的总小时数)
        return (int)subTimer.TotalHours;
    }

    /// <summary>
    /// 获取两个时间的相差多少天
    /// </summary>
    /// <param name="startTimer"></param>
    /// <param name="endTimer"></param>
    /// <returns></returns>
    public int GetSubDays(DateTime startTimer, DateTime endTimer)
    {
        TimeSpan startSpan = new TimeSpan(startTimer.Ticks);

        TimeSpan nowSpan = new TimeSpan(endTimer.Ticks);

        TimeSpan subTimer = nowSpan.Subtract(startSpan).Duration();

        //返回相差时长(仅返回相差的天数)
        //return subTimer.Days;
        //返回相差时长(返回相差的总天数)
        return (int)subTimer.TotalDays;
    }
}

保留 后几位小数点

一、float转换为string:ToString("f3"):保留3位小数点,3代表保留多少位小数点
 

str_tmp +="\n"+ arrTargetAngles[i].ToString("f3");
一、string转换为float保留多少位小数点
好像是多少位就是多少位,超出范围另当别论

 float.TryParse(student.Attributes["x"].Value, out targetVec3[i].x);
float f_tmp_x = float.Parse(student.Attributes["x"].Value);
————————————————

原文链接:https://blog.csdn.net/qq_40544338/article/details/102678178

字符串 替换   也可以去除某个字符文章来源地址https://www.toymoban.com/news/detail-537252.html

字符串替换
string s = “siki”;
string newStr = s.Replace(‘i’, ‘h’);//用指定字符更换另一个字符,用后面的替换前面的
string newStr = s.Replace(“si”, “zaaa”);//用指定字符更换另一个字符,用后面的替换前面的,长度不要
求一致
t2.Replace(" ", "")//去除 所有空格
t2.Replace(",", "")//去除 所有逗号

到了这里,关于unity 字符串 小技巧的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 字符串操作之字符串的截取

    字符串的截取是实际应用中经常使用的技术,被截取的部分称为“子串”。Java中使用函数substr()获取子串,C#使用函数substring()获取子串。而Python由于内置了序列,可以通过前面介绍的索引、切片获取子串,也可以使用函数split()来获取。字符串也属于序列。 下面这段代码使用

    2024年02月06日
    浏览(81)
  • Python截取字符串(字符串切片)方法详解

    从本质上讲,字符串是由多个字符构成的,字符之间是有顺序的,这个顺序号就称为索引(index)。Python 允许通过索引来操作字符串中的单个或者多个字符,比如获取指定索引处的字符,返回指定字符的索引值等。 知道字符串名字以后,在方括号[ ]中使用索引即可访问对应的

    2024年02月01日
    浏览(63)
  • Oracle——SUBSTR()截取字符串,INSTR()查找字符串

    使用语法:SUBSTR( string , start , [length]) string :需要截取的字符串。 start :  起始位置, -3 表示从倒数第三个字符开始, 从左往右 截取。 length:截取长度(默认截取到末尾)。 使用语法:INSTR( string , str , [start],[which]) string :源字符串。 str :查找的子字符串(可以

    2024年02月12日
    浏览(40)
  • js如何截取某个字符串前面所有的字符串

    利用substring()方法截取出字符 1.新建一个字符串 2.通过indexOf()方法获取你想截止到的那个字符 3.通过substring()方法,从字符串0位置开始截取至\\\"p\\\"前面的字符串

    2024年02月12日
    浏览(55)
  • 字符串截取

    目录 第一种:slice [开始下标, 结束下标) 第二种:substr [开始下标, 截取长度) 第三种:substring [开始下标,结束下标) 开始下标和结束下标可以使用负数表示 返回被截取出来的字符串,不包含结束下标对应的字符 如果第二个参数省略了,就默认截取到字符串末尾 如果开始下标

    2024年02月08日
    浏览(45)
  • js截取字符串

    1、 split() 方法用于把一个 字符串 分割成 字符串数组 2、 slice() 可提取字符串的某个部分,并以新的字符串返回被提取的部分 3、substring() 提取字符串中介于两个指定下标之间的字符 4、join() 把数组中的所有元素转换一个字符串 5、 charAt() 返回指定位置的字符 https://blog.csdn.

    2024年02月15日
    浏览(54)
  • Mysql字符串截取

            从左边截取字符串 用法:left(str,length), 即:left(被截取字符串,截取长度)         结果:fuyi         从右边截取字符串 用法:right(str,length), 即:right(被截取字符串,截取长度)         结果:ghao         有两种用法:                 substring(s

    2024年02月07日
    浏览(61)
  • php字符串截取

    1、使用 strstr(\\\"原始字符\\\",\\\"指定的字符\\\",布尔值) 布尔值为可选,为 true 返回第一次出现之前的字符串部分,默认为false 返回 返回第一次出现之前的字符串部分 strchr与strstr一样,strstr不区分大小写。 该方法输出指定字符之后的内容时会包含指定的字符串一起输出 1、 substr或指

    2024年02月08日
    浏览(49)
  • java截取某个字符之前的字符串

    1.截取\\\"-\\\"之前字符串 代码如下(示例): 2.运行后如下图 3.其他详细的用法,参考这篇文章:https://blog.csdn.net/kt1776133839/article/details/125937852?utm_medium=distribute.pc_relevant.none-task-blog-2 default baidujs_baidulandingword~default-0-125937852-blog-128866382.pc_relevant_aaspm=1001.2101.3001.4242.1utm_relevant_index

    2024年02月11日
    浏览(51)
  • Java截取字符串方法

    主要有以下几种方法:     1、通过subString()方法来进行字符串截取(最常用)     2、通过StringUtils(apache的)提供的方法或者StrUtil(hutool的)     3、split()+正则表达式来进行截取 1、通过subString()方法来进行字符串截取,返回字符串中的子字符串,在java中有两种用法    

    2024年02月16日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包