关于正则表达式去空格的
文章目录
问题描述:
一大段话,要求识别 回车,逗号(全角半角均可),顿号,空格(全角半角、Tab等均可)等符号作为不同内容的间隔,变成若干小句子
然后我写的
1空格2 空格能消掉。 空格空格1 空格消不掉
---------------------------已懂 我加了个条件 数组首尾元素是“”则弹出-----------
然后我去翻高程书128页
1 2 3 |
var color = \"red ,blue,green,yellow” var col = color.split(/[^\\,]+/)----->[\"\" , \",\" , \",\" , \",\" \"\"] |
\\,怎么理解 逗号还能转义?
网友观点:
转义逗号,由于逗号不是正则关键字,加\\和不加\\都可以,不影响,但是如果是{}[]这种字符就需要注意机上,要不报错
var col = color.split(/[\\,]+/)
加上^表示非逗号。因为split是作为分割的字符本身要去掉,所以不用非。
梳理一下正则表达式
正则表达式
基本的匹配对象
- [xyz]字符集,匹配任一包含(只要有就返回true)
- [^xyz]否定字符集,匹配任何未包含(只要有就返回true)
- \\w 匹配字母、数字、下划线
- \\W 匹配不是字母、数字、下划线
- \\s 匹配任意空白符(空格)
- \\S 匹配不是空白符的字符
- \\d 匹配数字
- \\D 匹配非数字的字符
- \\b 匹配单词开始/结束位置
- \\B 匹配不是单词开头/结束位置
- ^ 匹配字符串开头
- $ 匹配字符串结尾
- . 匹配任一字符(除了换行符)
RegExp
属性:
匹配规则字段
- source
反映标志位
- ignoreCase
- global
- multiline
方法:
- test()
- exec()
量词
- * 重复0 / m
- + 重复1 / m
- ? 重复0 / 1
- {n} 重复n次
- {n, m} 重复n - m次
分组
捕获性分组
- ()
引用
- res[1]
- RegExp.$1(1开始)
反向引用
- <(div)><\\/\\1> \\1为div
非捕获性分组
- (?:)
贪婪匹配和惰性匹配
贪婪匹配(greedy)
尽可能多的进行匹配
<span>xxx</span><span>yyy</span>
let reg = /<span>.*</span>/
最前面的匹配到最后面的
惰性匹配(no-greedy / lazy)
普通量词后加?
<span>xxx</span><span>yyy</span>
let reg = <span>.+?</span>
第一个span标签
正向前瞻和负向前瞻
正向前瞻(零宽断言)
用法1:匹配字段 / cwg (?= love little tail) /
用法2:匹配位置 / (?= love little tail) /
负向前瞻(负向零宽断言)
用法1:匹配字段 / cwg (?! love other gril) /
用法2: 匹配位置 / (?! love other gril) /
String中使用正则的方法
replace
作用:匹配替换
用法:str.replace(reg/str, 替换str/生成替换str的function)
match()
作用:返回一/多个匹配的值(类似于indexOf()但是返回的是值)
用法:str.match(reg/str)
split()
作用:”a b c d”按空格分的话,会有空格的选项
用法:str.split(reg/str)
上述解法:str.split(/\\s+/)
search()
作用:返回第一个匹配的起始位置
用法:str.search(reg)
1. 带 [亲测] 说明源码已经被站长亲测过!
2. 下载后的源码请在24小时内删除,仅供学习用途!
3. 分享目的仅供大家学习和交流,请不要用于商业用途!
4. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
5. 本站所有资源来源于站长上传和网络,如有侵权请邮件联系站长!
6. 没带 [亲测] 代表站长时间紧促,站长会保持每天更新 [亲测] 源码 !
7. 盗版ripro用户购买ripro美化无担保,若设置不成功/不生效我们不支持退款!
8. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
9. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
10.如果您购买了某个产品,而我们还没来得及更新,请联系站长或留言催更,谢谢理解 !
GG资源网 » 关于正则表达式去空格的