这个[h]没有匹配啊……麻烦大婶了……
追答先说原理:
不给出详细的信息,没法写出合适的正则。
所以:
1.输入:给个所要处理的内容的例子,越多越好。以及对应的规律
2.输出:给出你要处理后的变成啥样的。
我才能写出你要的,精确的正则。
一组HTML代码,需要找出以[h开头的,里边是个三位数的数字,然后是以]结束,我要拿到这个三位数字做替换内容。其实就是表情处理。将HTML代码转换成表情。
追答是啊,你这么说,不就清楚了嘛。。。不早说,浪费大家表情。。。。o(╯□╰)o
正则的写法:
\[h(\d{3})\]
\[:用于匹配左中括号
(\d{3}):是一个组group,group内是匹配数字,个数限定为3个
\]:用于匹配右中括号
给\d{3}加上括号,这样就可以直接获得对应的group内的内容了,此处就是你要的3个数字。
你有空,还是去看看这个吧;
【教程】以Python中的re模块为例,手把手教你,如何从无到有,写出相对复杂的正则表达式
未必一次就懂,但是看懂思路,慢慢练习,就慢慢会自己写复杂的了。
额外多问一下,这个正则表达式什么意思?
/\[[*\u4e00-\u9fa5]*?\]/g
谢谢啦,分肯定给你了。
/\[[*\u4e00-\u9fa5]*?\]/g
是
/xxx/g的形式
是PHP,或字符处理工具中的正则的写法
g一般表示的是global==全局的意思
此处xxx是:
\[[*\u4e00-\u9fa5]*?\]
\[:匹配左括号
[*\u4e00-\u9fa5]*?是[xxx]*?的形式,表示:
xxx有0到多个,但是数量是尽量少
此处xxx是:
*\u4e00-\u9fa5
其中:
*:中括号内的星号,此处只表示星号本身
\u4e00-\u9fa5:一般常被用来表示去匹配中文字符
\]:用于匹配右中括号
所以,此处加起来的意思就是:
左中括号[ 开头,右中括号]结尾
括号中间是 星号* 或 中文字符,匹配的数目是,0或任意多个,但是尽量少
比如
[*大*家*好]
之类的。
其实我要的是类似与这种判断的,只不过是取得数字。现在你这个判断得到的是个null……
追答1.哪个判断?
2. 从什么输入中,得到的是null???
啊,没事,我已经弄出来了,谢谢啦。把你的那个稍微改了一下就适合我这里的使用了。情况不一样,所以稍微改了点。谢谢,非常感谢。给你再加20分,这回赚的爽了吧……嘎嘎
追答1.话说,你自己不把问题描述清楚,写出来的正则,不能使用,那就很正常了。
2.另外,我对分数无所谓,你要是缺分,我送你点也行。所以,你那句“给你再加20分,这回赚的爽了吧……嘎嘎”对我没用。
3.我回答你们问题,就是看到很多人乱回答,看不过,才来的。另外我写了够多的教程,就是用于给你们不懂的看的。对你们有帮助,才是我的目的。赚分,不是我的目的。