利用正则表达式怎么获取字符串中的汉字

  介绍

这篇文章给大家介绍利用正则表达式怎么获取字符串中的汉字,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

要求:仅获取attr中的“编辑发起状态的执行人表单”,路径C: \ fakepath \是不固定的,可以是C: \ fakepath \终极战士\ hhhh \字符

解决:

var  attr =, C: \ fakepath \编辑发起状态的执行人表单. png=,,attr  title.split(“!”)[0];,//,截取到,——祝辞,“C: \ fakepath \编辑发起状态的执行人表单“   ,var  reg =, new 正则表达式(& # 39;[\ u4e00 - \ u9fa5] + $ & # 39;, & # 39;舌鳎# 39;);,//定义正则:截取以汉字结尾的部分,+代表可以一个或多个汉字=,,attr  reg.exec (attr),,,,,//,截取到,——在编辑发起状态的执行人表单   ,警报(attr);

补充正则基础语法(来源网络):

1。非打印字符

字符含义\残雪匹配由x指明的控制字符。例如,\厘米匹配一个Control-M或回车符。x的值必须为a - z或a - z之一。否,则将c视为一个原义的“c # 39;字符。\ f匹配一个换页符。等价于\ x0c和\ cL。\ n匹配一个换行符。等价于\ x0a和\ cJ。\ r匹配一个回车符。等价于\ x0d和cM。\ \ s匹配任何空白字符,包括空格,制表符、换页符等等。等价于[v \ f t \ n \ r \ \]。\ s匹配任何非空白字符。等价于f t \ n \ r \ [^ \ \ v]。\ t匹配一个制表符。等价于\ x09和cI。\ \ v匹配一个垂直制表符。等价于\ x0b和\ cK。

2。特殊字符

所谓特殊字符,就是一些有特殊含义的字符,如上面说的”*。txt”中的*,简单的说就是表示任何字符串的意思。如果要查找文件名中有*的文件,则需要对*进行转义,即在其前加一个\ .ls \ *。txt。正则表达式有以下特殊字符。

特别字符说明美元匹配输入字符串的结尾位置。如果设置了正则表达式对象的多行属性,则美元也匹配' \ n # 39;或“\ " # 39;。要匹配字美元符本身,请使用\美元。()标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用\(和\)。*匹配前面的子表达式零次或多次。要匹配*字符,请使用\ *。+匹配前面的子表达式一次或多次。要匹配+字符,请使用\ + . .匹配除换行符\ n之外的任何单字符。要匹配,请使用\[标。记一个中括号表达式的开始。要匹配(,请使用\ [。匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配吗?字符,请使用\ ?。\将下一个字符标记为或特殊字符,或原义字符,或向后引用,或八进制转义符。例如,“n # 39;匹配字符’n # 39;强生# 39;\ n # 39;匹配换行符。序列“\ \ & # 39;匹配“\”,而“\ (& # 39;则匹配”(“。^匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配^字符本身,请使用\ ^。{标记限定符表达式的开始。要匹配{,请使用\{。|指明两项之间的一个选择。要匹配|,请使用\ |。

构造正则表达式的方法和创建数学表达式的方法一样,也就是用多种元字符与操作符将小的表达式结合在一起来创建更大的表达式。

正则表达式的组件可以是单个的字符,字符集合,字符范围,字符间的选择或者所有这些组件的任意组合。

3。限定符

限定符用来指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。有*或+或?或{n}或{n}或{n, m}共6种。

*, +和?限定符都是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上一个?就可以实现非贪婪或最小匹配。

正则表达式的限定符有:

字符描述*匹配前面的子表达式零次或多次。例如,佐薇*能匹配以“z”及“动物园”。*等价于{0}。+匹配前面的子表达式一次或多次。例如,& # 39;佐薇+ & # 39;能匹配以“佐薇”及“动物园”,但不能匹配“z”。+等价于{1,}。匹配前面的子表达式零次或一次,例如,“(es)吗?“可以匹配“”或“”中的“做”。等价于{0,1},{n} n是一个非负整数。匹配确定的n次,例如,& # 39;o {2} & # 39;不能匹配“Bob”中的“o # 39;,但是能匹配“食物”中的两个o。{n} n是一个非负整数。至少匹配n次,例如,& # 39;o {2,} & # 39;不能匹配“Bob”中的“o # 39;,但能匹配“foooood”中的所有o, o {1,} & # 39;等价于' o + & # 39;强生# 39;o {0} & # 39;则等价于“o * & # 39;。{n, m} m和n均为非负整数,其中n & lt;=m。最少匹配n次且最多匹配m次,例如,“o{1,3}”将匹配中“fooooood”的前三个o, o {0,1} & # 39;等价于‘o ? & # 39;。请注意在逗号和两个数之间不能有空格。

利用正则表达式怎么获取字符串中的汉字