第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何匹配包含unicode字符的完整字符串?

如何匹配包含unicode字符的完整字符串?

Go
森林海 2023-07-10 14:24:27
我想驗(yàn)證一個(gè)字符串,例如名稱。沒有空格的字符串。對于正常的 Ascii,以下正則表達(dá)式就足夠了&ldquo;^\w+$&rdquo;,其中 ^ 和 $ 考慮整個(gè)字符串。我嘗試使用 \pL 字符類對 unicode 字符實(shí)現(xiàn)相同的結(jié)果以支持多種語言。但由于某種原因 $ 無法幫助匹配字符串結(jié)尾。我究竟做錯(cuò)了什么?go版本go1.12.5 darwin/amd64package mainimport (? ? "fmt"? ? "regexp")func main() {? ? // Unicode character class? ? fmt.Println(regexp.MatchString(`^\pL+$`, "testuser"))? // expected true? ? fmt.Println(regexp.MatchString(`^\pL+$`, "user with space")) // expected false?? ? // Hindi script? ? fmt.Println(regexp.MatchString(`^\pL+$`, "????")) // expected true doesn't match end of line? ? // Hindi script? ? fmt.Println(regexp.MatchString(`^\pL+`, "????")) // expected true? ? // Chinese? ? fmt.Println(regexp.MatchString(`^\pL+$`, "我能")) // expected true? ? //French? ? fmt.Println(regexp.MatchString(`^\pL+$`, "&aelig;githalesh&acirc;tifs")) // expected true?}actual result:true? <nil>false <nil>false <nil>true <nil>true <nil>true <nil>expected result:true <nil>false <nil>true <nil>true <nil>true <nil>true <nil>
查看完整描述

1 回答

?
慕蓋茨4494581

TA貢獻(xiàn)1850條經(jīng)驗(yàn) 獲得超11個(gè)贊

您可以使用

^[\p{L}\p{M}]+$

細(xì)節(jié)

  • ^- 字符串的開頭

  • [- 匹配的字符類的開始

    • \p{L}- 任何BMP字母

    • \p{M}- 任何變音符號

  • ]+- 角色課程結(jié)束,重復(fù)1次以上

  • $- 字符串末尾。

_如果您還計(jì)劃匹配數(shù)字\w,請將它們添加到字符類中,^[\p{L}\p{M}0-9_]+$或者^[\p{L}\p{M}\p{N}_]+$.


查看完整回答
反對 回復(fù) 2023-07-10
  • 1 回答
  • 0 關(guān)注
  • 155 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號