string manipulation in game development-C # in Unity -

时间:2022-01-01 17:00:46

◇ string manipulation in game development-C # in Unity -

It is about the various string

● defined as the declaration of a string variable

string s = "string";

※ s leading lowercase

● addition of string

string a = "string A";
string b = "string B";
string c; and add the / / string to each other; c = a + b
a constant to / / variable; c = a + "string C" The plus
to add a variable to the / / constant; c = "string C" + a

● The length of the string

string a = "A string";
int b; b = a.length;

Number of characters is returned. Will be 4 Using the example above 
you will be counted as one full-width characters

● takes out part of the string

string a = "A string";
string b; b = A.Substring ("starting position", and "number of characters to retrieve");

Zero-based starting position 
em will also be counted as one character

b = a.Substring (0, 2); / / from the first two characters → character
(1, 2) b = a.Substring; / / from the second character 3 character string →
​​b = a.Substring (1); / / 3 remaining characters all → string A

● split with a particular character string

string a = "string A \ n string B";
string [] b;
c string; ("\ N" [0]) b = A.Split; with / / line feed code division
c = b [0]; / / "String A" into the c

If you want multiple delimiters, which is possible by the array

string a = "string A \ n string B";
string [] b;
c string;
delimiter / / data; string [] = {KUGIRI "\ r", "\ N"} b = A.Split split at each character in the / / KUGIRI variable; (KUGIRI)
"A string" into the / / c; c = b [0]

○ If you want to delete items only blank 
in Split in fact there is a second argument, if you specify a System.StringSplitOptions.RemoveEmptyEntries there, no variable contents will be deleted after you split

There are three line break in between / /; string a = "string A \ n \ n \ n string B"
string [] b;
string c; b = A.Split ("\ N" [0], System . split / / line feed code; StringSplitOptions.RemoveEmptyEntries). Blank to remove

/ / "String A" b [0] 
"String B" / / b [1] 
/ / enters

● string comparison

I == comparable in principle

string a = "A string"; 

{(a == "string A") if
a match / /
} else {
not / / match
}

• Use the Equals method if you can not compare well

string a = "A string"; 

{(a.equals ("string A")) if
the match / /
} else {
not / / match
}

• It is not possible to compare the variables and only made a declaration

a string; 

if (a == null) {/ / x
}

↓ like this I get an error 
CS0165 error: Use of unassigned local variable `a ' variables to use the if statement, it must be always defined in some cases not. Because it is useless

a string;
int b = 1; if (b == 1) {
a = "initialization";
}
if (a == null) {
Debug.Log ("true");
}

※ It is an error if b is not 1, so may occur state of · null It is a thing with nothing on is instead of a null, then it also can be assigned null

string a = null;

● Substitute a numeric value to a string

· Integer

int a = 123;
string b; b = "" + a;

Minority

float a = 123.45F;
string b; b = "" + a;

● The assignment to a numeric character

• In the case of integer

string a = "123";
int b; TRY {
; (a) b = Int.Parse
catch {}
: (It is an error even when a small number of) when a string is not an integer / / error
}

Will result in an error of less than in the case of a string that can not be converted 
Object reference not set to an instance of an object: NullReferenceException in the case of the Minority

string a = "123.45";
float b; TRY {
; (a) b = Float.Parse
{} catch
: when a string is not a small number / / error
}

○ use the TryParse method if you do not want to raise an exception 
if the integer-

string a = "123";
int b; {if (Int.TryParse (a, b out))
when the / / normal
result of 123 is in the / / b
} else {
/ / error: string (It is an error even when a few) when it is not an integer
0 always contains the / / b
}

• If a small number of

string a = "123.45";
float b; {if (Float.TryParse (a, b out))
when the / / normal
result of 123.45 is in the / / b
} else {
/ / error: string when it is not a small number
0 always contains the / / b
}

● string search

string a = "string A \ n string B";
int b; b = A.IndexOf ('\ N');

Is set to 0 the beginning, the number of characters was first discovered will contain 
is b = 4 in this case, if the character is not found, -1 is entered

(('\ n') == -1 a.IndexOf) {if
there is no / / string
} {else
there is a / / string
}

● switch ~ case statement

; string word = "spring" Switch (Word) { Case "Spring": Case "summer": Case "Autumn": : Case "winter"     case was one of the / / four season     ; break : default     / / it other than     / / Can not be omitted; break } You can not omit the last break of ※. The following error appears when I forget to write error CS0163: Control cannot fall through from one case label to another

● debug output

string debug = "debug string";
Debug.Log (debug);

※ Console window appears in the Window → Console menu