1樓:匿名使用者
漢字的表示和正規表示式引擎相關,不同引擎的寫法不同,下面的寫法適用於java引擎,或者一切以unicode來表示字元的引擎。
1、基本規格——針對漢字的一般集合(cp936,約等於gbk,共計20000多漢字)
[\u3007\u4e00-\u9fcb\ue815-\ue864]
2、擴充規格——針對多一些的漢字(支援cjk exta,共計接近30000漢字)
[\u3007\u3400-\u4db5\u4e00-\u9fcb\ue815-\ue864]
3、豪華規格——針對更多的漢字(支援cjk extb、c、......,共計76000多漢字)
([\u3007\u3400-\u4db5\u4e00-\u9fcb\ue815-\ue864]|[\ud840-\ud87f][\udc00-\udfff])
如下關於漢字在unicode中的區間,亦可供參考
如何讓正規表示式只匹配一次中文字元?
2樓:
可以參bai考下下面的du**,希望能zhi幫到你:
string s = new string("大大dao大大大大");
pattern pattern = pattern.***pile("^!\\p");//只匹回配乙個中文字答符
matcher matcher = pattern.matcher();
while(matcher.find())
3樓:匿名使用者
沒太明bai白你的意思。
要判斷du 第乙個是不是zhi 「大」 字,還是 要把
dao 多個「大」字變成乙個?版
string s="大大大大";
s.startswith("大");//是否以「權大」 開頭s=s.replaceall("大+", "大");//將多個大替換成乙個
4樓:匿名使用者
我用的是python
>>> import re
>>> r=re.***pile('大')>>> s="大大大大大大"
>>> print r.match(s).group()大
求乙個查詢特定中文字元正規表示式 5
5樓:要麻
日[ ]*書[ ]*記[ ]*員
解釋一下,
首先你得保證,這四個字之間只能有空格或者沒有空格,有其它空版白字元的話自己權補。
[ ],這個是表示字元集合,表示只匹配中括號中的字元。這裡面的字元是空格。表示在這幾個字元之間只能有空格。
*,這個符號通常是最小匹配,即匹配0個或多個,就是無論這四個字前後之間有沒有空格,它都能匹配。
此表示式己經試驗通過。
更多notepad++的正規表示式語法參考
6樓:匿名使用者
日\s*書\s*記\s*員
正規表示式,如何匹配除了空格之外的所有字元?
7樓:泥馬不能更改
右斜槓和大寫字母復s就能避開
制任意空格,包括避開回車bai(換行
符)和軟回du車(強制換行zhi符),查詢到除任意dao空格以外的其他任意字元。本來很簡單的事被一些自以為是的半調子**誤人子弟。\s或\s+ 加號表示一次或多次,看自己需要決定
8樓:愛你凡凡麼麼噠
^var reg = /([^\s])/g;
var str = "a b c d e f";
var arr = str.match(reg);
console.error (arr);
正規表示式,又稱規則表示式。(英語:regular expression,在**中常簡寫為regex、regexp或re),計算機回科學的乙個答概念。
正規表示式通常被用來檢索、替換那些符合某個模式(規則)的文字。
許多程式語言都支援利用正規表示式進行字串操作。例如,在perl中就內建了乙個功能強大的正規表示式引擎。正規表示式這個概念最初是由unix中的工具軟體(例如sed和grep)普及開的。
正規表示式通常縮寫成「regex」,單數有regexp、regex,複數有regexps、regexes、regexen。
求乙個匹配中文的正規表示式 100
9樓:匿名使用者
你這什麼語言啊?
copy
word 是bai
所有小寫英文本母
du[a-z]
所有大寫英文本母[a-z]
所有西文字元
zhi[^1-^127]
所有中文漢字和中文標點
dao[!^1-^127]
所有中文漢字(cjk統一字元)[一-龥] or [一-﨩]所有中文標點[!一-龥^1-^127]
所有非數字字元[!0-9]
其他語言可以類推
10樓:匿名使用者
(?<=「)[\u4e00-\u9fa5]+(?=」)
以上為簡單答案,也有複雜的,主要是關於「什麼是漢字」,可參考以前回答過的類似問題。
11樓:匿名使用者
「[^x00-xff]+」
雙引號是英文的就換成英文的,是中文的就換成中文的
12樓:匿名使用者
[\u4e00-\u9fa5]*
正規表示式如何匹配兩個引號中含有中文的字串?
13樓:司馬刀劍
[u@baih /billing/user/xufc/pp]$perl
my $line='abc(@a)defghi(@b)aaaaa'; #要用單引號du、雙引號perl就先給你認
zhi為括號裡面為空dao
my @array=($line =~ m/\((.*?)\)/g) ; #語法叫版「列表上下文中的m//」,匹配(xx),然後權提取出xx
print "@array\n"; #輸入完成後、按ctrl+d代表程式結束
@a @b #輸出的結果
[u@h /billing/user/xufc/pp]$這個是perl裡面的,其它語言不知道怎麼用
如何用正則匹配中文長度,使乙個中文佔兩個字元。只能用正規表示式,不能加其他**,謝謝。 5
14樓:
什麼意思?乙個中文只能佔乙個字元。
你是要匹配什麼樣的效果,可以先舉個例子。
15樓:匿名使用者
看你用的什麼工具,語言,
這個是有差異的
求乙個正規表示式可以匹配:中文字元,中文標點符號,英文,數字,下劃線。但不能輸入@、# 等特殊字元.
16樓:
\w+|[,。《》()、—]+
\w匹配:中文字元,英文,數字,下劃線
至於中文標點符號,看你需要了,如果有另外的就新增在中括號裡面。
17樓:匿名使用者
\w不匹配中文字元的
18樓:
[^%&',;=?$\x22]+
19樓:匿名使用者
/^(?: [^[:punct:]] | \_ )+$/x
20樓:匿名使用者
^[^!@#$%^&*()-=+]+$
正規表示式怎麼匹配非漢字非字母非數字之外的字元?
21樓:匿名使用者
漢字的表示和正規表示式引擎相關,不同引擎的寫法不同,下面的寫法適用於java引擎,或者一切以unicode來表示字元的引擎。
1、基本規格——針對漢字的一般集合(cp936,約等於gbk,共計20000多漢字)
[^\da-za-z\u3007\u4e00-\u9fcb\ue815-\ue864]
2、擴充規格——針對多一些的漢字(支援cjk exta,共計接近30000漢字)
3、豪華規格——針對更多的漢字(支援cjk extb、c、......,共計75000多漢字)
(?![\da-za-z\u3007\u3400-\u4db5\u4e00-\u9fcb\ue815-\ue864]|[\ud840-\ud87f][\udc00-\udfff])
22樓:泥馬不能更改
要除去哪個就把哪個新增到中括號裡[^]。這就是查詢除去漢字、字母、數字之外的其他所有字元,加號表示一次或多次,根據自己需要決定。[^~k\d\l\u]+
23樓:pys大本營
/[\x-\x]+/u , 如果是utf8編碼的字串後面一定要加模式修飾符 u,不然報錯
24樓:死後是好人
非字母,非數字[^a-za-z0-9]*
想要非漢字就太困難了,需要利用相關漢語編碼
表示佔座等高手來正則匹配
正規表示式如何匹配漢字,如何用正規表示式校驗漢字
去掉 和 試試 u4e00 u9fa5 u數字,在perl pcre中要改為 x x 按.的標準,w本來就是可以匹配 漢字,字母,數字,下劃線。的所以一般 w可以滿足需求了。如果需要排除字母數字的話,可以這樣 a za z0 9 w 這樣寫估計效率不高 所以一般來說還是直接匹配指定的unicode碼...
python中正規表示式怎麼匹配中文
a za z0 9 s 中國.group 1 就是 s1 需要正則嗎,if s1.find 中國 0 不就行了 python正規表示式中 w居然能匹配漢字,請問是怎麼一回事?w匹配的是能組成單詞的字元,在python3 中re預設支援的是unicode字符集,當然也支援漢字 如果要讓 w僅支援英文,...
正規表示式匹配大小寫問題,正規表示式不分大小寫匹配指定字串
v v ar b v i 後面加個i 不區分大小寫 正規表示式不分大小寫匹配指定字串 20 你可以在匹配模式中設定,比如是php的話 error warning i 這裡的 是正則的開始與結束,最後面的i表示匹配忽略大小寫 d d d 這個正規表示式能提取字串倒數第4位到第7位的數字值。例如 123...