如何用正则表达式匹配汉字

 我来答
Li小八Li
2018-03-31 · TA获得超过711个赞
知道答主
回答量:15
采纳率:0%
帮助的人:2067
展开全部

一般情况下可以这样匹配中文,如图:<img src="https://pic4.zhimg.com/50/edcbd2faf1a916675cec852bd886e599_hd.jpg" data-rawwidth="827" data-rawheight="600" class="origin_image zh-lightbox-thumb" width="827" data-original="https://pic4.zhimg.com/edcbd2faf1a916675cec852bd886e599_r.jpg">

先用靓汤或正则找到这个节点,再用上面的字符组匹配。
假设这个节点只有一个,用法如下:

import reimport requests as reqfrom bs4 import BeautifulSoupurl = 'xxx'html = req.get(url).textbs = BeautifulSoup(html)span = bs.find_all('span', 'pro-title')'''span = re.findall('<span\sclass="pro-title">[^<]+</span>', html)s = span[0]m = re.findall('[\u4e00-\u9fa5]+', s)'''s = str(span)m = re.findall('[\u4e00-\u9fa5]+', s)print(m)

Lyinginthesun9
2019-08-24
知道答主
回答量:12
采纳率:0%
帮助的人:7349
展开全部
var str = '你好地世界世界';
假如想用正则表达式的方式找出str中'地'的下标;
var re=/\地/;
console.log(str.search(re));
控制台打印出 2.

(这就是其中一个方法,直接在想匹配的汉字前面加\),比如 /\地/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尉穹4w
推荐于2017-11-23 · TA获得超过453个赞
知道小有建树答主
回答量:353
采纳率:36%
帮助的人:146万
展开全部
[\u4E00-\u9FA5\\s]+ 多个汉字,包括空格
[\u4E00-\u9FA5]+ 多个汉字,不包括空格
[\u4E00-\u9FA5] 一个汉字
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
octstonewk
2021-04-12 · TA获得超过9700个赞
知道大有可为答主
回答量:3786
采纳率:50%
帮助的人:1637万
展开全部
如果是GB码,可能是双字节GBK[0x81-0xfe][0x40-0xfe],也可能是四字节GB18030[0x81-0xfe][0x30-0x39][0x81-0xfe][0x30-0x39]。
汉字在Unicode中称作CJK 统一表意符号 (CJK Unified Ideographs),包括
reg=/^([\u+3400-\u+4dbf\u4e00-\u9fff\u+20000-\u3fffd\ue000-f8ff]{2,7})$/; //只能是中文,长度为2-7位
最后一项为PUA,参见百度百科【统一码】。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式