正则使用集锦

1.开始与结束时间用“/”来分隔 两个时间段用“,”来分隔 如下
2009-09-30/2009-09-30,2009-10-01/2009-10-01

若我想取得每个时间段的开始时间,怎么匹配啊?

答:

var s = " 2009-09-30/2011-11-11,2009-10-01/2012-12-12 " ;
var re = / \d{4}-\d{2}-\d{2}(?=\/) / g;
var r = s.match(re); // r 是匹配结果数组。
alert(r);

2.如何用正则显示ini文件所有主键?数据例如:

[Windows 帮助]
H_WindowPosition=[426,266,426,266,0]
[SysParam]
RemPass=1
ServerCount=2
server0=127.0.0.1
UserCount=1

答:^\s*(\[.*\])\s*$

3.如何读取指定主键的键值?数据还是上面的,例如读取SysParam下面的server0

答:^\s\[SysParam\](?:.|\r|\n)*server0=(.*)\s$ 子匹配的第一项就是

4.如何将一个字符串中的每个字符用空格隔开?例如“abccdef”

答:

方法1:“(.)”匹配替换成“$1 ”

方法2:“.*?”匹配替换成“ ”

5.正则去除全部HTML标签。
<font color="#009900"> </font> <b> </b>
仅这2种标签留下,不去除。
但是上面的2个标签是以这种形式存在的:
<font color=\"#009900\"> <b>标题 <\/b>

答:<(?!font|b|\\/?font|\\/?b)[^>]*>或<\/?(?!font|b)[^>]*>

6.如何测试一个字符串是不是ip?

答:((2[0-4]\d|25[0-5]|[1-9]|[1-9]\d|1\d\d)\.){3}(2[0-4]\d|25[0-5]|[1-9]|[1-9]\d|1\d\d)(?!\d)

7.如何删除c代码中的注释?

答:/\*[\s\S]*?\*/\s*|//.*(?=\r\n)|\s+?//.*(?=\r\n)

7.如何删除一篇文章中的空行?

答:将(\r\n)^\s*$\r\n替换成$1

原文地址:https://www.cnblogs.com/sysdzw/p/1939365.html