Julia 之初體驗(七)字串

2021-10-06 10:30:22 字數 3844 閱讀 5991

單個字元型別是char。要用單引號,用了雙引號就成了string。

julia> 'x'

'x': ascii/unicode u+0078 (category ll: letter, lowercase)

julia> typeof(ans)

char

julia> "p"

"p"julia> typeof(ans)

string

julia將轉化成unicode code值。注意要用單引號。雙引號就報錯,string不能轉化unicode code值。

julia> int('x')

120julia> typeof(ans)

int64

julia> int("y")

error: methoderror: no method matching int64(::string)

closest candidates are:

int64(::union) at boot.jl:707

int64(::ptr) at boot.jl:717

int64(::float32) at float.jl:707

...stacktrace:

[1] top-level scope at none:0

julia> char(120)

'x': ascii/unicode u+0078 (category ll: letter, lowercase)

julia> char(134)

'\u86': unicode u+0086 (category cc: other, control)

julia> char(233)

'é': unicode u+00e9 (category ll: letter, lowercase)

julia> char(219)

'û': unicode u+00db (category lu: letter, uppercase)

也可以將unicode code值轉化成char。

julia> char(0x110000)

'\u110000': unicode u+110000 (category in: invalid, too high)

julia> isvalid(char, 0x110000)

false

julia使用系統的語言環境和語言設定來確定哪些字元可以原樣列印,哪些字元必須使用通用的轉義\ u或\ u輸入格式輸出。 除了這些unicode轉義形式之外,還可以使用c的所有傳統轉義輸入形式:

julia> '\u0'

'\0': ascii/unicode u+0000 (category cc: other, control)

julia> '\u78'

'x': ascii/unicode u+0078 (category ll: letter, lowercase)

julia> '\u2200'

'∀': unicode u+2200 (category sm: symbol, math)

julia> '\u10ffff'

'\u10ffff': unicode u+10ffff (category cn: other, not assigned)

julia> int('\0')

0julia> int('\t')

9julia> int('\n')

10julia> int('\e')

27julia> int('\x7f')

127julia> int('\177')

127

julia> 'a' < 'a'

true

julia> 'a' <= 'a' <= 'z'

false

julia> 'a' <= 'x' <= 'z'

true

julia> 'x' - 'a'

23julia> 'a' + 1

'b': ascii/unicode u+0042 (category lu: letter, uppercase)

字串

字串文字用雙引號或三重雙引號分隔:

julia> str = "hello, world.\n"

"hello, world.\n"

julia> """contains "quote" characters"""

"contains \"quote\" characters"

julia> str[begin]

'h': ascii/unicode u+0048 (category lu: letter, uppercase)

julia> str[1]

'h': ascii/unicode u+0048 (category lu: letter, uppercase)

julia> str[6]

',': ascii/unicode u+002c (category po: punctuation, other)

julia> str[end]

'\n': ascii/unicode u+000a (category cc: other, control)

許多julia物件(包括字串)都可以用整數索引。 firstindex(str)返回第乙個元素的索引(字串的第乙個字元),lastindex(str)返回最後乙個元素(字元)的索引。 關鍵字begin和end可以在索引操作中用作沿給定維度的第乙個索引和最後乙個索引的簡寫。 像julia中的大多數索引一樣,字串索引是基於1的:對於任何abstractstring,firstindex始終返回1。 但是,正如我們將在下面看到的那樣,lastindex(str)通常與字串的length(str)不同,因為某些unicode字元可以占用多個「**單元」。

julia> str[end-1]

'.': ascii/unicode u+002e (category po: punctuation, other)

julia> str[end÷2]

' ': ascii/unicode u+0020 (category zs: separator, space)

不能越界,越界就報錯。

julia> str[begin-1]

error: boundserror: attempt to access string

at index [0]

[...]

julia> str[end+1]

error: boundserror: attempt to access string

at index [15]

[...]

字串切片:

julia> str[4:9]

"lo, wo"

julia> str[6]

',': ascii/unicode u+002c (category po: punctuation, other)

julia> str[6:6]

","

julia> str = "long string"

"long string"

julia> substr = substring(str, 1, 4)

"long"

julia> typeof(substr)

substring

字串初體驗

字串總結 1 char arr 10 剩餘部分為 0 2 char crr 10 字元陣列特有 3 char drr 10 abc 字元陣列特有 4 char err abc 字元陣列特有 字串 1 以 號包括的字串行,帶 0 2 字串的結尾標識為 0 3 只要帶 0 的都是字串。注意事項 1 ch...

01 字元裝置驅動初體驗

一 驅動基本框架 1 建立入口函式demo init 和出口函式demo exit 並用module init module exit module license gpl 函式進行註冊 二 填充驅動框架 1 入口函式中註冊裝置register chrdev 建立類class create 以及裝置...

Python基礎 七 字串

python字串 python 訪問字串中的值 python 不支援單字元型別,單字元在 python 中也是作為乙個字串使用。python 訪問子字串,可以使用方括號來擷取字串,如下例項 var1 hello world var2 runoob print var1 0 var1 0 print ...