如何用正则表达式匹配汉字
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用正则表达式匹配汉字相关的知识,希望对你有一定的参考价值。
一般情况下可以这样匹配中文,如图:<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)
假如想用正则表达式的方式找出str中'地'的下标;
var re=/\地/;
console.log(str.search(re));
控制台打印出 2.
(这就是其中一个方法,直接在想匹配的汉字前面加\),比如 /\地/ 参考技术B [\u4E00-\u9FA5\\s]+ 多个汉字,包括空格
[\u4E00-\u9FA5]+ 多个汉字,不包括空格
[\u4E00-\u9FA5] 一个汉字 参考技术C 如果是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,参见百度百科【统一码】。
易语言如何用正则表达式来读取制定的网页文本 最好源码上,谢谢
正则代码自己写到常量里模块为精易模块3.12
常量:
.版本 2
.常量 正则表达式, ""
全局变量
.版本 2
.全局变量 正则表达, 正则表达式类
然后代码如下:
正则表达.创建 (#正则表达式,网页文本, )
正则表达.取子匹配文本 (1, 1)追问
不用编辑框的内容等于什么什么么?很奇怪啊
追答什么意思?网页文本=HTTP读文本()
参考技术A 网页源码呢?以上是关于如何用正则表达式匹配汉字的主要内容,如果未能解决你的问题,请参考以下文章