正则表达式应用

正则表达式 /\s*/  可以匹配的多个空格   但是捕获的结果只保留一个空格     
 
     解决方案1 :split() 方法会保存空字符串  str.split(" ")  以一个空格为切分点,连续空格时,会以空字符串代替 切分后的位置
  eg  "This     is an example!"//共五个空格
    ["This", "", "", "", "", "is", "", "", "", "", "an", "example!"]  //五个空格  四个缝隙 四个空字符串 
     解决方案2 :/\S+\s*(\b|$)/g    //\b会匹配单词的边界 结果会保留多个空格  但在控制台只显示一个空格
 
 
常用正则
     1.   /(.*\n*)*/m  匹配多行的所有内容
     2. 匹配HTML标签  /<(\w+)>(.+)<$1>/   (利用反向引用)
     3. /[\S\s]*/ 匹配包括换行符在内的所有字符
     4. /[\w\u0080-\uFFFF]/   将\w扩展到Unicode字符集, 匹配所以Unicode字符 。    \w 123(十六进制0x80)个字符 + Unicode剩下的所有字符
 
 
字符串问题解决思路 
     1.数组思路   颗粒度细, 可以借助各种函数操作数组
     2.正则表达式思路     缺点   正则表达式中字符的转义问题
                                             操作多个位置的字符不方便
                                             (\1) 不能解决 区分大小写问题
                                             修改字符串,会影响到输入的字符串,而不是返回新字符串
 
posted @ 2016-09-03 16:44  阿巴阿巴55996  阅读(103)  评论(0)    收藏  举报